selenium + python自动化测试unittest框架学习随机生成姓名

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了selenium + python自动化测试unittest框架学习随机生成姓名相关的知识,希望对你有一定的参考价值。

在自动化测试过程中经常要测试到添加用户的操作,每次都要输入中文,原本是找了十几个中文写成了列表,然后从列表中随机取出填入用户名文本框中,随着测试的增加,发现同名的人搜索出来一大堆,最后在网上找了个随机生成姓名的方法,在此记录下,学习来源:https://segmentfault.com/q/1010000006941249

姓氏和名字的列表:

import random
import string

last_names = [, , , , , , , , , , , , , , , , , , , ,
, , , , , , , , , , , , , , , , , , , ,
, , , , , , , , , , , , , , , , , , , ,
, , , , , , , , , , , , , , , , , , , ,
, , , , , , , , , , , , , , , , , , , ,
, , , , , , , , , , , , , , , , , , , ,
, , , , , , , ]
first_names = [, , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , 使, , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , 西, , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , 便, , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , 穿, , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , 怀,
                   , , 广, , , , , , , , , , , , , , , , , ,
                   , , , , 线, , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   退, , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , , , , , , , , , , , , , , , , , , , ,
                   , ]

随机生成的方法:

def random_name(size = 1,chars = string.ascii_letters + string.digits):
    return ‘‘.join(random.choice(chars) for _ in range(size))
#名字,两个中文字符
def first_name(size = 2,ln = None,fn = None):
    _lst = []
    for i in range(size):
        _item = random_name(1,fn)
        if ln:
            while _item in ln:
                _item = random_name(1,fn)
            _lst.append(_item)
        else:
            _lst.append(_lst)
    return "".join(_lst)

#姓氏
def last_name(size =1,names = None):
    return random_name(size,names)

#姓名
def full_name(lns, fns):
    _last = last_name(1, lns)
    return "{}{}".format(_last, first_name(random.randint(1, 2), _last, fns))

def get_name():
    name = full_name(last_names, first_names)
    return name

 

以上是关于selenium + python自动化测试unittest框架学习随机生成姓名的主要内容,如果未能解决你的问题,请参考以下文章

python-selenium自动化测试网页

[Selenium自动化测试学习]Python+Selenium环境搭建

第一章 python+selenium自动化测试实战

python+selenium自动化软件测试(第5章):Selenium Gird

Selenium+Python自动化测试实战元素定位

python+selenium自动化测试之登录