我有一个selenium脚本列表,我想测试它们,看它们是否正常工作I.e 1.py,2.py,3.py,4.py,5.py在文件夹C:\ Selenium脚本中。
显然,我宁愿不必坐在那里看,因为我相当肯定他们的工作,但我想确定。如何自动化测试?
我知道框架虽然是一种更简单的方法,我相信将每个脚本调用到另一个Python中。虽然如果由于错误而停止,这将无效。我想你可以创建一个try和except块(不确定这是不是很好的做法,但它可能会工作)。
理想情况下,我会立即运行它们,但Selenium不支持多线程,以免造成问题。
我如何有效地运行自动化测试?
你可以使用cxfreeze并调用每个脚本,但是当它们完成时它们并不是真的知道,或者如果它们完成并创建错误,那么其他作业将不会运行。
调用另一个脚本,例如:
1_module.朋友
def main():
from selenium import webdriver
from selenium.common.exceptions import TimeoutException
from selenium.webdriver.chrome.options import Options
import os
import sys
import os
driver = webdriver.Chrome(chromedriver_path)
driver.get("https://stackoverflow.com")
import 2.2_module
2.2_module.do_something_in_2()
if __name__ == '__main__':
main()
2_module.朋友
import selenium
print('testing...actions..')
您基本上需要一个具有自动测试发现的测试运行器。尽管标准的内置unittest
模块具有这些功能,但我建议您查看pytest
test runner。