网站被降权会发生什么影响,株洲专业seo优化,合肥模板网站建设收费,汕头网站设计公司有这样一个业务场景#xff0c;登录不同地区的账号#xff0c;重复500遍#xff0c;以验证登录功能是否正常。
登录的代码如下#xff0c;其中login_data是一个fixture#xff0c;用来组织数据#xff1a;
pytest.mark.parametrize(login_data, [cn_test, …有这样一个业务场景登录不同地区的账号重复500遍以验证登录功能是否正常。
登录的代码如下其中login_data是一个fixture用来组织数据
pytest.mark.parametrize(login_data, [cn_test, us, eu], indirectTrue)
def test_login_change_region(appium_service, ios_driver, login_data):...
那么如何实现重复登录500遍呢按照之前文章介绍过的内容来说在设置--count 500即可但这样你会发现cn_test登录了500遍、us登录了500遍、eu登录了500遍。
之前文章讲过两个parametrize中的参数会按照笛卡尔积进行排序当时我们并没有关心它们的执行顺序例如像下面这样写执行结果会怎样呢
pytest.mark.parametrize(repeat_count, list(range(2)))
pytest.mark.parametrize(login_data, [cn_test, us, eu], indirectTrue)
def test_login_change_region(appium_service, ios_driver, login_data, repeat_count: int):...
首先总次数肯定是6次没问题那么顺序呢实际执行的顺序是这样的
cn_test登录了2遍、us登录了2遍、eu登录了2遍。不是第1遍登录cn_test、us、eu第2遍登录cn_test、us、eu。
那么如果我就是想要 第1遍登录cn_test、us、eu第2遍登录cn_test、us、eu 如何实现呢
这里介绍一种方法手动组合参数以获得所需的执行顺序
pytest.mark.parametrize(login_data, [cn_test, us, eu] * 2 indirectTrue) # 重复2次
def test_login_change_region(appium_service, ios_driver, login_data):# 登录逻辑这样得到的顺序就是第1遍登录cn_test、us、eu第2遍登录cn_test、us、eu了。
【总结】
同样的操作但是不同的执行顺序可能会发现不同的问题这样就需要我们控制测试方法的执行顺序所以我们不仅要考虑如何编写测试方法还有考虑它们的执行顺序。