使用python实现测试工具(五)

乙醇 创建于 about 6 years 之前

最后更新: less than a minute 之前

阅读数: 461

使用python实现测试工具(五)

本系列教程使用的python版本是3.6.3

背景

我们在进行测试的时候经常需要去生成一些测试数据,这就是所谓的造数据。

生成随机的用户真实姓名是非常常见的需求,这一节我们看一下如何使用python的来实现这个功能。

我们将实现随机生成英文名的功能。

英文名的生成规则是first_name last_name,也就是名在前,姓在后,中间空格分隔。

代码


import random

last = ('Appleyard', 'Bigmeat', 'Bloominshine', 'Boogerbottom',
    'Breedslovetrout', 'Butterbaugh', 'Clovenhoof', 'Clutterbuck',
    'Cocktoasten', 'Endicott', 'Fewhairs', 'Gooberdapple',
    'Goodensmith', 'Goodpasture', 'Guster', 'Henderson', 'Hooperbag',
    'Hoosenater', 'Hootkins', 'Jefferson', 'Jenkins',
    'Jingley-Schmidt', 'Johnson', 'Kingfish', 'Listenbee', "M'Bembo",
    'McFadden', 'Moonshine', 'Nettles', 'Noseworthy', 'Olivetti',
    'Outerbridge', 'Overpeck', 'Overturf', 'Oxhandler', 'Pealike',
    'Pennywhistle', 'Peterson', 'Pieplow', 'Pinkerton', 'Porkins',
    'Putney', 'Quakenbush', 'Rainwater', 'Rosenthal', 'Rubbins',
    'Sackrider', 'Snuggleshine', 'Splern', 'Stevens', 'Stroganoff',
    'Sugar-Gold', 'Swackhamer', 'Tippins', 'Turnipseed',
    'Vinaigrette', 'Walkingstick', 'Wallbanger', 'Weewax', 'Weiners',
    'Whipkey', 'Wigglesworth', 'Wimplesnatch', 'Winterkorn',
    'Woolysocks')

first = ('Baby Oil', 'Bad News', 'Big Burps', "Bill 'Beenie-Weenie'",
    "Bob 'Stinkbug'", 'Bowel Noises', 'Boxelder', "Bud 'Lite'",
    'Butterbean', 'Buttermilk', 'Buttocks', 'Chad', 'Chesterfield',
    'Chewy', 'Chigger', 'Cinnabuns', 'Cleet', 'Cornbread',
    'Crab Meat', 'Crapps', 'Dark Skies', 'Dennis Clawhammer',
    'Dicman', 'Elphonso', 'Fancypants', 'Figgs', 'Foncy', 'Gootsy',
    'Greasy Jim', 'Huckleberry', 'Huggy', 'Ignatious', 'Jimbo',
    "Joe 'Pottin Soil'", 'Johnny', 'Lemongrass', 'Lil Debil',
    'Longbranch', '"Lunch Money"', 'Mergatroid', '"Mr Peabody"',
    'Oil-Can', 'Oinks', 'Old Scratch', 'Ovaltine', 'Pennywhistle',
    'Pitchfork Ben', 'Potato Bug', 'Pushmeet', 'Rock Candy',
    'Schlomo', 'Scratchensniff', 'Scut', "Sid 'The Squirts'",
    'Skidmark', 'Slaps', 'Snakes', 'Snoobs', 'Snorki', 'Soupcan Sam',
    'Spitzitout', 'Squids', 'Stinky', 'Storyboard', 'Sweet Tea',
    'TeeTee', 'Wheezy Joe', "Winston 'Jazz Hands'", 'Worms')


def random_full_name():
    return "{} {}".format(random.choice(first), random.choice(last))

print(random_full_name())

分析

代码很简单,定义2个原组,就是小括号括起来的那个像列表的东西,分别是lastfirst

我们的生成算法就是随机从first和last里选1个first_name和last_name,然后拼成1个完整的英文名。

需要注意的1个小点

  • random.choice(seq)的用法。从seq里随机选1个元素;

源码地址

github地址

0

相关课程

mockito简明教程
图文
mockito简明教程

课程分类: 测试工具

mock工具

  • 已完结
  • 已更新7集
  • 最后更新时间: 2024-03-18 12:50:29

免费

查看详情
requests从入门到精通
图文
requests从入门到精通

课程分类: 测试工具 接口测试

python接口测试必会

  • 已完结
  • 已更新16集
  • 最后更新时间: 2024-03-18 12:54:40

免费

查看详情
Locust实用教程
图文
Locust实用教程

课程分类: 性能测试 测试工具

python语言实现的非常出色性能测试工具

  • 已完结
  • 已更新9集
  • 最后更新时间: 2024-03-18 12:24:59

免费

查看详情
TDD测试驱动开发教程
图文
TDD测试驱动开发教程

课程分类: 测试框架 软件测试基础

TDD其实并不神秘

  • 已完结
  • 已更新7集
  • 最后更新时间: 2024-03-18 11:53:22

免费

查看详情
软件测试基础教程
图文
软件测试基础教程

课程分类: 软件测试基础

转码和转行必备

  • 已完结
  • 已更新9集
  • 最后更新时间: 2024-03-18 11:40:05

免费

查看详情
软件测试入门教程
图文
软件测试入门教程

课程分类: 软件测试基础

新人如何转码到软件测试

  • 已完结
  • 已更新9集
  • 最后更新时间: 2024-03-17 11:07:23

免费

查看详情