web自动化总结与答疑

  • 要求: 看完本章节所有课程内容,并完成作业,优先回答和作业相关的问题
  • 有什么问题在评论区回复

知识点

  • 复用浏览器
  • cookie登录
  • po设计模式

优秀作业

https://github.com/vndbjlqx/gitDemo/tree/main/seleniumWebDriverHomework

PO模型中,怎么对失败case进行截图

用例每次都需要删除前面运行过的数据,如何进行数据初始化比较好?1、删除数据库;2、在用例开始执行前删除;3、在用例执行后删除;4、单独一条用例在后面执行;其他方案。。

现实用例中如何解决扫码登录问题,是通过remote 复用浏览器吗?

页面元素直接在类变量中维护就好吗,有没有必要提取到yaml文件进行管理

PO模式遇到的循环导入问题,除了把导入操作放在方法内部,还有什么其他的解决方案吗

@pytest.hookimpl(hookwrapper=True, tryfirst=True)
def pytest_runtest_makereport(item, call):
    out = yield
    report = out.get_result()
    print('执行结果: %s' % report.outcome)

可以通过这个hook函数解决,当断言失败时,调用截图方法处理

  • 不建议删库;当业务复杂时,涉及多个表,表关系较为复杂,删数据库时,没有删除干净、或者删多了,对现有系统都有影响;
  • 建议通过接口或者UI功能进行删除;
  • 扫码登录是为了防止脚本登录;测试环境可以和开发沟通去掉或者使用账户密码登录;如代码无法修改,也可以使用复用浏览器或者使用cookie进行登录

这个要看自己需要了,放在类变量放在放在yaml文件都可以

作业里面,从通讯录点击添加成员按钮,跳转到添加成员页面老是点击不跳转,用显示等待判断元素出现、元素可点击都不作用,加了强制等待才解决,老师演示一下这边显示等待的处理吧;
同样,通过通讯录进入添加成员,最后获取成员名称列表老是[’’, ‘’],同样加强制等待才解决问题,这边用显示等待要怎么处理呢