2013-07-26 4 views
0

우리는 C#과 통합 된 Selenium을 사용하여 웹 응용 프로그램 테스트를 수행합니다. 내가 발견 한 문제는 다른 Selenium + [코드] 조합에 비해 Selenium + C#이 인데 놀랍게도이 느리다는 것입니다.C#/Selenium 테스트 속도 향상

이것은 "웹 응용 프로그램에 로그인하고 나서 웹 응용 프로그램에 로그인"테스트에 불과합니다.

  • 0시 4분

    - 파이어 폭스
  • 내 셀레늄 IDE
  • 0시 5분 - 셀레늄 WD + 파이썬, 테스트 만
  • 0시 9분 - 셀레늄 WD + 파이썬, 총 실행
  • 0 : Visual Studio를 통한 셀레늄 WD + C#> 디버그, 테스트 전용
  • 0:20 - Visual Studio를 통한 Selenium WD + C# 디버그, 총 실행
  • 0:25 - 셀렌 WD + C# + NUnit, 테스트 만
  • 0:35 - Selenium WD + C# + NUnit과, 총 실행
  • 0시 37분 - 젠킨스를 통해 셀레늄 WD + C 번호 + NUnit과 테스트 만
  • 0시 56분 - 젠킨스를 통해 셀레늄 WD + C 번호 + NUnit과, 총 실행

무엇 나는 이것을 덜 가볍게 느리게 만들 수 있을까?

+2

그럼 당신은 실행중인 코드 등 네트워크 성능, 증권, 확인 도왔? 이 문제를 증명하는 데 도움이되는 매우 간단한 테스트가 되었기를 바랍니다. 어떤 사이트에 반대합니까? Selenium의 어떤 버전입니까? 어떤 브라우저? 해당 브라우저의 버전은 무엇입니까? 드라이버 추적 로그를 활성화 했습니까? 다른 컴퓨터에서 해봤습니까? 페이지를로드하는 속도가 느리거나 명령을 실행할 때 Selenium 속도가 느립니까? 이것이 진행될 때의 CPU 및 메모리 사용량은 무엇입니까? – Arran

+0

그 시간을 절약하고 다른 테스트를 추가하고 시간을 비교하는 것이 좋습니다. 나는 실제 테스트가 더 느리게 실행되고 있다고 생각하지 않는다. 당신이 포함하는 각각의 부분 만이 초기화 시간에 추가된다. (그리고 실제 테스트를위한 약간의 시간 증가가있을 수있다.) –

답변

0

아마 x64 시스템에서 테스트를 실행 중입니다. 그것이 사실이라면 x64 WebDriver를 사용해야합니다.

+0

이것은 당신이 개인적으로 경험 한 문제이며 당신이 발견 한 문제였다. 문제 때문에? –

0

여기에는 많은 요소가 있지만, 내 경험으로 볼 때 C# + Selenium은 제가 사용한 가장 빠른 것 중 하나입니다. 당신이 한 번에 실행할 테스트의 양을 낮추고, 테스트를 parrallelizing하는 경우

  • :

    여기에 당신이 시도 할 수있는 몇 가지 있습니다. 정말 병목 현상을 일으키고 때로는 테스트 무결성을 엉망으로 만들 수도 있습니다.

  • 코드 정리. 나는 무차별 대입 로그인을 테스트하는 툴을 받았고, 겨우 임계 값을 만들 수있었습니다 (20 초 X 초 이내). 다시 정렬하고, 재사용하고, 일부 기능을 다시 중앙 집중화했으며, 30 초 이내에 임계 값에 도달했습니다. 이것은 또한 나에게, 당신이 그것을 실행하는 경우 RDC를 통해
  • 실행 더 병렬화 테스트를 얻을