51Testing软件测试论坛

标题: 良好的开端是自动化测试成功的一半 [打印本页]

作者: lsekfe    时间: 2022-3-1 11:43
标题: 良好的开端是自动化测试成功的一半
俗语说得好:良好的开端是成功的一半,在Web自动化测试中,首页登录是每个测试用例执行的前提。
  首页登录有验证码,也有为了安全而设置的验证码,对这些验证码进行自动识别,提取文字进行登录,是自动化测试良好的开端,否则一切都无从谈起。
  至于有些博客提到开发设置万能码等,如果开发团队支持也是可行,不在本文讨论范围之内。
  “自己动手,丰衣足食”!在即将迎来招聘黄金季之际,将此文分享给读者,希望读者们也有一个良好的自动化测试开篇。

  首页登录——无验证码
  用Chrome浏览器测试,运行首页,首页无验证码字段。
[attach]136624[/attach]
  1. import time
  2. from selenium import webdriver

  3. # 要测试的网站
  4. weburl = 'XXX'
  5. driver = webdriver.Chrome()
  6. driver.maximize_window()
  7. driver.get(weburl)
  8. driver.implicitly_wait(5)

  9. # 账号、密码
  10. login = 'XXX'
  11. password = 'XXX'
  12. driver.find_element_by_id('loginName').send_keys(login)
  13. driver.find_element_by_id('loginPassword').send_keys(password)
  14. driver.find_element_by_id('submit').click()
  15. time.sleep(5)

  16. driver.quit()
复制代码
上述代码实例中,用实际的测试数据代替“XXX”。

  登录——验证码
  四种登录验证码的思路
  输入式验证码
  这种是最简单的一种,只要识别出里面的内容,然后填入到输入框中即可,也是企业内部网站很常用的一种。只要不是电商网站,一般用这种就足够了。
  这也是本文着重介绍的技术。这种识别技术叫OCR,这里我们推荐使用Python的第三方库——tesserocr。
  对于没有什么背影影响的验证码,直接通过这个库来识别就可以。但是对于有嘈杂的背景的验证码这种,直接识别识别率会很低,遇到这种我们就得需要先处理一下图片,先对图片进行灰度化,然后再进行二值化,再去识别,这样识别率会大大提高。

  滑动式验证码
  模拟人去拖动验证码的行为,点击按钮,然后看到了缺口的位置,最后把拼图拖到缺口位置处完成验证。
  第一步点击按钮,第二步拖到缺口位置。
更多内容:点击下载>>>


作者: 千里    时间: 2022-3-1 15:00
验证码就是为了防自动化的,这东西太讨厌了




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2