1

셀렌 스크립트 목록이 있는데 제대로 작동하는지 테스트하고 싶습니다. 예를 들어 1.py, 2.py, 3.py, 4.py, 5.py를 C 폴더에 넣으십시오. : \ Selenium 스크립트.다른 스크립트를 호출하는 테스트 자동화

분명히 나는 ​​앉아있을 필요가 없다. 나는 그들이 일하는 것이 확실하다고 확신하지만 나는 확신하고 싶다. 테스트 자동화에 어떻게 가야합니까?

프레임 워크를 알고 있지만 파이썬에서 다른 스크립트로 각 스크립트를 호출하는 것이 더 간단합니다. 오류로 인해 중단 되었더라도 작동하지 않습니다. try and except 블록을 만들 수 있다고 가정합니다. (이것이 좋은 연습인지는 확실치 않지만 어쩌면 작동 할 것입니다.)

이상적으로는 모든 것을 한꺼번에 실행하지만 문제가 발생하지 않도록 다중 스레드는 셀레늄에서 지원되지 않습니다.

자동 테스트는 어떻게 효과적으로 수행합니까?

cxfreeze를 사용하여 각 스크립트를 호출 할 수 있지만 스크립트가 끝나거나 완료되고 오류가 발생하면 다른 작업이 실행되지 않습니다.

예 : 다른 스크립트를 호출 :

1_module.py

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.py

import selenium 
print('testing...actions..') 
+0

여기에 단위 테스트를 사용 했습니까? 당신이하고있는 일을보기 위해 파일 중 하나의 예를 보여줄 수 있습니까? – Goralight

+0

@Goralight 저는 파이썬에 대해 아직 아주 새롭습니다. 나는 작동하지 않는 예를 보여주었습니다. 어쩌면이 방법을 고치거나 멀티 스레딩 프레임 워크를 사용하는 것이 좋습니다. –

+0

unittest 모듈 + 서브 프로세스 모듈 –

답변

0

당신은 기본적으로 자동 테스트 발견와 테스트 러너가 필요합니다. 표준 내장형 unittest 모듈에는 이러한 기능이 있지만 pytest test runner을 살펴 보시기 바랍니다.

+0

실제 예제를 보여줄 수 있습니까? –

+0

@geeg [pytest discovery logic] (https://docs.pytest.org/en/latest/example/pythoncollection.html)과 일치하는 테스트가있는 경우 자동으로 자동 검색하여 실행합니다. – alecxe

0

자동 테스트를 병렬로 실행하기 위해 Selenium Grid를 사용할 수 있습니다 (멀티 스레딩을 사용하지 않고). 그것은 당신의 시간을 절약 할 것입니다.