2012-07-05 6 views
15

요즘 나는 우리 회사에서 테스터 중 한 명에게 오이 (2 가지 특징, 5 가지 시나리오)로 작성한 일부 테스트를 보여주었습니다.오이/카피 바라 대 셀렌?

방법이 셀레늄 또는 기타 기능 테스트 기록 도구보다 낫다? 는 그 때 그는 나에게 내가 대답 할 수 질문 질문

저는 오이가 다른 기술이고 다른 수준의 테스트에 들어간다는 것을 알고 있지만 오이/카피 바라 테스트를 작성하고 유지해야하는 이유를 이해할 수 없습니다.

그냥 셀레늄 대신 오이/카피 바라를 사용하는 것에 대한 합리적인 설명을 줄 수 있습니까?

답변

14

이 질문은 의견을 묻는 경계선입니다. 귀하의 질문은 실제로 "나에게 맞는 도구는 무엇입니까?" 나는 당신이 왜 오이와 카피 바라를 선택한 이유를 밝히지 않았기 때문에 이것을 말합니다. 그 테스터의 질문에 대답하는 것이 믿어지면 먼저 두 가지 질문에 더 대답해야합니다.

1.이 테스트를 진행하는 단계는 무엇입니까?

오이는 사용하는 언어에 따라 단위 테스트에 적합하지 않을 수 있습니다. 그러나 이것은 단위에서 최종 사용자에 이르기까지 모든 수준의 테스트에 사용할 수 있습니다.

2.) 누가 테스트를 유지하려고합니까? 당신? 다른 개발자들? 테스터? 비즈니스 분석가? 프로젝트 매니저?

자동화 된 테스트가 유지되어야하며 누가 그 일을 할 것인지 알면 도구를 결정하는 데 도움이 될 수 있습니다. 일부는 특정 사용자에게 너무 기술적 인 도구이기 때문에 도구를 사용할 때 도움이됩니다.

3. 누가 새 테스트를 정의 할 예정입니까?

오이는 개발, 품질 보증 및 비즈니스 소유자간에 공동으로 사용하기위한 것입니다.모든 사람의 지식을 자동화 된 테스트 프로세스에 활용할 수있는 완벽한 도구입니다. 그러나 유비쿼터스 언어의 개발이 필요합니다. James Shore's Art of Agile 페이지에서 해당 내용을 읽을 수 있습니다.

이 질문에 답변하면 테스터의 질문에 답변 할 수 있습니다.

그러나 기록 도구 (예 : Selenium IDE, HP Quick Test Pro, IBM Rational Functional Tester)와 개발 도구 (nUnit, jUnit, RSpec, Selenium webdriver 등)를 비교할 때 유의해야 할 점이 몇 가지 있습니다. 카피 바라)는 다른 관객을 겨냥한 대상입니다. 그들은 또한 다른 plusses 및 빼기있다.

녹음 도구는 누구나 쉽게 사용할 수 있지만 만드는 스크립트는 허약합니다. 그들은 쉽게 깨지고 더 많은 유지 보수가 필요합니다. 이들은 일회성 자동화 테스트에 적합합니다. 신속한 테스트가 필요하고 기술자가 아닌 인력이 필요합니다.

개발 도구는 학습 과정이 많으며 프로그래밍 (또는 최소 스크립팅) 경험이 필요합니다. 스크립트는 일반적으로 더 강력하지만 유지 관리에 더 많은 기술 지식이 필요합니다. 그들은 반복성을 원하고 오랜 시간 동안 테스트를 사용할 계획이라면 좋은 솔루션입니다.

The Cucumber Book을 강력하게 추천합니다. 오이가 당신에게 옳은 선택인지 결정하는 데 정말로 도움이 될 것입니다.

+0

충분합니다. 그러나 그것은 또한 당신이 둘 다 할 수 있다고 가정합니다. QA 엔지니어로서 개발자의 코딩 관행에 대한 통제권이 없습니다. 그러나 나는 오이를 단위 테스트보다 훨씬 효과적으로 활용하여 변화를 촉진 할 수 있습니다. –

+0

사실, 질문은 : "나는 왜 오이를 쓸 것인가?" – treaz

+0

@treaz Cucumber는 "문서화, 이해 관계자 및 요구 사항 저장소와 협력 할 수있는 메커니즘"을 사용합니다. –

7

오이는 테스트 도구 일뿐만 아닙니다. 오이 기능을 테스트하는 것 외에도 문서화, 이해 관계자 및 요구 사항 저장소와 공동 작업하는 메커니즘 (사용자가 declarative style에 쓰는 경우)의 역할을 수행합니다.

카피 바라와 함께 오이를 사용할 필요는 없습니다. 셀레늄을 직접 사용할 수 있습니다. 그러나 Capybara는 모든 supporting drivers에 대해 동일한 고급 API를 사용합니다. Selenium보다 높은 수준이며 테스트를 조금 더 빠르게 작성할 수 있습니다. 한 드라이버에서 다른 드라이버로 전환 할 때 코드를 변경할 필요가 없습니다.

테스트 기록 도구를 사용하여 작성된 테스트는 일반적으로 훨씬 나쁩니다. Selenium IDE는 유효한 프로그래밍 코드를 생성 할 수 있지만 잘 보이지 않으므로 유지 관리가 어렵습니다.

0

오이는 비즈니스 사용자가 테스트를 읽을 수있게 만드는 데 사용되는 도구입니다. 그것은 정규식을 사용하여 카피 바라 계단과 일치하는 일반 영어 문장으로 구성됩니다.

녹음 도구를 사용하면 장기적으로 나에게 도움이되지 않습니다. 그것들은 초보자를위한 것이었고 그렇게 강력하지 않았기 때문에 곧바로 코딩하도록 권합니다.

테스트 용으로 Selenium 만 사용할 수도 있지만 유용하고 사용하기 쉽다면 설명서 목적으로 오이를 계속 사용하는 것이 좋습니다. 결국 오이는 카피 바라 또는 셀레늄 웹 드라이버를 사용할 수 있습니다.

+2

비즈니스 사용자는 테스트 읽기/쓰기에 정말로 관심이 있습니까? 내 경험으로 그들은 단지 일을하고 싶다 ... 녹음 도구는 초보자를위한 것이었다 - 도구를 사용하는 것이 더 쉬우면 누군가 오이/카피 바라를 배워야겠습니까? – treaz

+0

그래, 대부분의 비즈니스 사용자가 아니더라도 기능 파일을 보지 않아도된다고 동의하지만 오이가 그 대상입니다. 녹음 도구는 초보자에게 적합하지만 카피 바라와 같은 고급 언어를 배우는 것은 매우 쉽습니다. 단지 몇 가지 방법으로 만 해결할 수 있습니다. – maru

0

셀레늄 ide는 주로 시각적 요소 (링크, 텍스트 등)가있는 기능을 테스트하는 데 적합합니다. 그러나 종종 웹 응용 프로그램은 이메일 전송, 대기열 작업, 제 3 자 서비스와의 통신 등과 같은 시각적 요소로 자신을 나타내지 않는 기능을 가지고 있습니다. 예를 들어, '이메일이 전송되었습니다.' 양식 제출. 그러나 이메일이 실제로 전송되었는지 여부는 실제로 알려주지 않으므로 여기에서 전체 기능을 실제로 테스트하지는 않습니다.