getting started with fitnesse collaboration tool
이제 세계는 애자일로 이동하고 있습니다. 모든 스크럼 팀에게 초기의 지속적인 피드백은 매우 중요합니다. 세상이 변하고 있기 때문에 테스터들의 사고 방식도 바뀌어야합니다.
테스터는 이제 '버그 찾기, 소프트웨어 깨기, 요구 사항 측정'대신 '처음에 바로 품질 제공, UI없이 테스트하거나 UI를 사용할 수 있기 전에 테스트'하는 것을 생각하고 있습니다.
이제 테스터도 변화에 대응해야하므로 UI가 개발 될 때까지 기다리지 않고 블랙 박스 테스트 기술에서 벗어나는 것이 중요합니다. 대신 중간 결과물도 테스트하십시오.
학습 내용 :
안드로이드를위한 최고의 음악 mp3 다운로드
- 하지만 왜?
- FitNesse는 무엇입니까?
- FitNesse를 사용해야하는 이유는 무엇입니까?
- 그래서 내가 무엇을 만들 수 있습니까?
- FitNesse 다운로드 및 구성 :
- FitNesse 예제 – 테스트 할 항목 :
- FitNesse에서 테스트 작성 :
- 고정물 / 테이블 스타일에 대한 몇 가지 통찰력 :
- 추천:
- 결론
- 추천 도서
하지만 왜?
'지금은 매우 민첩한 관점입니다'.
소프트웨어를 빌드 할 때마다 가장 낮은 테스트 계층이 단위 / 구성 요소 수준으로 유지됩니다. 단위 테스트는 개발 팀에서 수행합니다. 이러한 단위 테스트는 기술 지향적이며 대부분 테스트 대상 시스템과 동일한 언어로 작성됩니다.
이러한 단위 테스트는 ' X 단위 ”테스트 도구. 테스트 세계에서 우리는 단위 테스트가 견고하다면 , 결함을 훨씬 일찍 식별하고 안정적인 환경에서 단위 테스트 계층 위의 테스트가 쉬워집니다. 그리고 Agile에서 이야기 할 때 팀이 TDD (Test Driven Development)의 기술을 습득하면 단위 수준 테스트가 가장 빠른 피드백을 제공한다고 말합니다.
단위 / 구성 요소 계층 위의 계층은 비즈니스를 수행하는 수락 테스트 계층입니다. 기능 테스트는 단위 테스트보다 더 많은 적용 범위를 가지며 대부분 개발자가 아닌 사용자가 실행합니다. 이 테스트는 프리젠 테이션 레이어 또는 API 뒤에있는 레이어를 테스트합니다. 테스트 할 때 이러한 API 또는 메서드는 빠른 피드백을 제공하며 GUI가 개발 될 때 대부분의 기능이 테스트됩니다.
FitNesse는이 자동 수락 테스트 레이어의 예입니다.
FitNesse는 무엇입니까?
FitNesse는 '완전히 통합 된 독립형 위키 및 승인 테스트 프레임 워크'입니다. 오픈 소스, 위키 웹 서버입니다. Wiki- 테스트 테이블이 생성되는 자신의 웹 페이지를 만들 수 있기 때문입니다. 이 테스트 테이블은 테스트 데이터 .
그 의도는 민첩한 스타일의 블랙 박스 수용 및 회귀 테스트를 지원하는 것입니다. 테스터가 개발자와 협력하여 테스트 도구 모음을 준비하기 때문에 공동 작업 도구이기도합니다.
FitNesse를 사용해야하는 이유는 무엇입니까?
애자일 테스트 팀은 FitNesse를 사용하여 코드의 메서드를 테스트 할 테스트 슈트를 준비 할 수 있습니다. FitNesse는 다음과 유사합니다. Junit 방법도 테스트하는 방식이지만 테스트가 개발자와 비 개발자 모두 사용할 수있는 간단한 테이블 형식이기 때문에 Junit과 다릅니다.
혜택:
- 필요한만큼 자주 자동화 된 승인 테스트를 실행하여 조기 피드백.
- 테스트 결과는 빨간색 또는 녹색으로 강조 표시되기 때문에 결정적입니다.
- 테스트 데이터는 품질 요구 사항에 맞게 설계 할 수 있습니다.
- 테스트는 간단한 언어로 작성되며 표 형식으로 작성되어 이해하기 쉽습니다.
- 이러한 테이블은 입력 및 예상 출력 측면에서 정의됩니다.
- 모두보기 여기에 FitNesse 기능이 있습니다.
그래서 내가 무엇을 만들 수 있습니까?
FitNesse에서 테스트 및 스위트를 생성 할 수 있습니다. 용어는 테스트 세계에서 사용되는 것과 매우 동일합니다. 테스트는 단일 스크립트이며 한 벌은 테스트 모음 / 그룹입니다. 슈트를 만들고 실행하면 그 슈트의 모든 테스트가 실행된다는 장점이 있습니다. 따라서 양복에 테스트를 준비하려면 적절한 계획이 필요합니다.
FitNesse 다운로드 및 구성 :
=> FitNesse를 다운로드하려면 여기를 클릭하세요
(노트: 이미지를 클릭하시면 크게보실 수 있습니다.)

최신 버전의 fitnesse-standalone.jar을 다운로드하여 로컬 드라이브에 저장하십시오.

명령 프롬프트를 열고 jar 파일을 실행하십시오. 쉽게 배치 파일을 만들었습니다.

jar 파일이 실행되면 아래와 같이 FitNesse가 시작됩니다. (확대보기를 위해 이미지를 클릭하십시오)

FitNesse를 열려면 브라우저를 열고 다음을 입력하세요. http : // localhost : . 이 경우 포트 번호는 2222입니다.
수신 된 페이지는 다음과 같습니다. (확대보기를 위해 이미지를 클릭하십시오)

따라서 여기에서 테스트 드롭 다운을 볼 수 있으면 '스위트 페이지'와 '테스트 페이지'를 만들 수 있습니다. 스위트를 생성하면 해당 스위트 내의 모든 테스트 스크립트가 실행됩니다.
설명을 위해 테스트 페이지를 예로 들어 보겠습니다.
FitNesse 예제 – 테스트 할 항목 :
현재 우리는 아래와 같은 간단한 계산기 프로그램을 테스트하고 있습니다.
다음은 4 개의 메소드가있는 Java의 코드입니다.
- 더하기 ()
- 마이너스 ()
- 곱하기 ()
- 나누기 ()
(FitNesse는 원하는 언어로 작동합니다. 설명을 위해 Java를 사용했습니다.)
FitNesse 세계에서이 코드를 'Fixture'라고합니다.
Fixture는 샘플 코드 일뿐입니다. – 또는 FitNesse와 테스트중인 애플리케이션 간의 링크. 그래서 우리가 메소드를 테스트하고 싶을 때마다, 우리는 조명기를 작성해야하고이 조명기가 메소드를 호출하고 테스트 할 것입니다.
따라서 예제의 'Fixture'코드는 다음과 같습니다.
publicclass Calculator { privateint first,second; publicvoid setFirst(int first) { this.first=first; } publicvoid setSecond(int second) { this.second=second; } publicint addition() { return (first+second); } publicint minus() { return (first-second); } publicint multiply() { return (first*second); } publicfloatdivide() { return (first/second); } } 이클립스의 코드는 다음과 같이 표시됩니다. (확대보기를 위해 이미지를 클릭하십시오)

클래스 파일이 필요하므로 컴파일해야합니다.
FitNesse에서 테스트 작성 :
1 단계) FitNesse 첫 페이지가있는 브라우저로 돌아 갑시다.
첫 페이지에서 '테스트 페이지'를 클릭하고 테스트 이름을 입력 한 후 '저장'버튼을 클릭합니다. 여기서는 '계산기'입니다.

2 단계) URL에 점 '.'과 함께 테스트 이름을 추가합니다. 운영자.
처럼: http : // localhost : 2222 / FrontPage.Calculator

3 단계) 편집 버튼을 클릭하고 아래 표시된 줄을 입력하십시오

입력 된 라인은 다음과 같습니다.
! define TEST_SYSTEM {slim}
! 경로 F : Eclipse TestFitness bin
! | 계산기 |
| 첫번째 | 두번째 | 더하기? | 빼기? | 곱하기? | 나누기? |
| 4 | 2 | 6 | 2 | 8 | 2.0 |
| 10 | 5 | 15 | 5 | 50 | 2.0 |
| 10 | 10 | 20 | 0 | 100 | 1.0 |
한 줄씩 이해합시다.
에) 첫 번째 줄은 FitNesse가 SLIM 테스트 시스템을 사용한다고 말합니다.
( 날씬한 – Simple List Invocation Method를 의미합니다. SLIM 테스트 시스템이라고 말함으로써 모든 테이블 처리는 FitNesse에서 수행합니다. SLIM에는 SLIM Runner와 SLIM Executer가 있습니다. SLIM Runner는 테스트 페이지를 간단한 명령어로 나누고 이러한 명령어는 픽스처 코드가 테스트중인 시스템을 호출하도록 지시하는 SLIM Executer로 전달됩니다.)
비) 두 번째 줄은 클래스 파일의 위치를 정의합니다. 이 경우 자바 코드가 컴파일되고 클래스 파일이“경로 F : Eclipse TestFitness bin'
씨) 세 번째 줄은 클래스 이름을 나타냅니다. 우리의 경우 '계산자'
디) 이제 네 번째 줄이 있습니다.
처음 두 열| 첫번째 | 두번째 |매개 변수 또는 Java 메소드에 대한 입력입니다.
뒤에 '?'가 오는 다음 4 개의 열더하기? | 빼기? | 곱하기? | 나누기? | Java 클래스의 메소드입니다. 이러한 메서드는 예상 값과 비교되는 값을 반환합니다.
이다) 선:
| 4 | 2 | 6 | 2 | 8 | 2.0 |
| 10 | 5 | 15 | 5 | 50 | 2.0 |
| 10 | 10 | 20 | 0 | 100 | 1.0 |
테스트 케이스입니까 아니면 우리 방법에 대한 테스트 데이터라고 말해야합니다.
첫 번째 줄 :
| 첫번째 | 두번째 | 더하기? | 빼기? | 곱하기? | 나누기? |
| 4 | 2 | 6 | 2 | 8 | 2.0 |
첫 번째 매개 변수로 4를, 두 번째 매개 변수로 2를 취하고이 두 값을 Java 클래스의 추가 메소드에 전달합니다. 메서드가 실행되고 값을 반환합니다. 이 반환 된 값은 '추가?'아래에 기록 된 예상 값과 비교됩니다. 그것은| 6 |
비슷한 방식으로 FitNesse는 마이너스의 처음 2 개 매개 변수를 전달합니까? Java 클래스의 메소드이며 값을 리턴합니다. 이 값은 예상 값과 비교됩니다. | 2 |
같은 방식으로 곱하십시오? 분할? 첫 번째와 두 번째 매개 변수의 값을 사용하여 작동하고 비교되는 값을 반환합니다.| 8 | 2.0 |각기
비슷한 방식으로 아래 2 개의 행 (또는 테스트 케이스라고 말해야 함)이 실행됩니다.
| 10 | 5 | 15 | 5 | 50 | 2.0 |
| 10 | 10 | 20 | 0 | 100 | 1.0 |
4 단계) 테스트를 편집 한 후 저장 버튼을 클릭하면 페이지가 다음과 같이 표시됩니다.

5 단계) 테스트를 실행하려면 테스트 버튼을 클릭하면 다음과 같은 결과가 나타납니다. (확대보기를 위해 이미지를 클릭하십시오)

첫 번째 행 (첫 번째 테스트 사례)의 경우 녹색은 메서드 더하기 (), 빼기 (), 곱하기 () 및 나누기 ()에서 반환 된 값이 예상되는 값 (예 : 6, 2)과 일치 함을 강조합니다. , 8 및 2.0. 마찬가지로 두 번째 행 (두 번째 테스트 사례)의 경우 메서드에서 반환 된 모든 값이 일치합니다.
6 단계) 이제 보여 드리기 위해 예상 값 중 일부를 다른 값으로 변경하겠습니다 (값은 올바르지 않지만 설명을 위해 의도적으로 수행했습니다).

지금은 다음이 있습니다.
- 첫 번째 테스트 케이스에 대한 추가 ()의 예상 값을 7로 변경했습니다.
- 두 번째 테스트 케이스의 minus ()에 대한 예상 값을 변경했습니다.
- 세 번째 테스트 케이스의 나누기 ()에 대한 예상 값을 변경했습니다.
7 단계) '테스트'버튼을 클릭하여 테스트를 실행합니다. 위의 테스트는 실패합니다. (확대보기를 위해 이미지를 클릭하십시오)

빨간색은 이러한 테스트가 실패했음을 나타냅니다.
고정물 / 테이블 스타일에 대한 몇 가지 통찰력 :
FitNesse에서 테스트는 테이블의 행을 실행하여 실행되는 것을 보았습니다. 따라서 다른 종류의 테스트를 실행하려면 (또는 다른 종류의 메서드를 테스트한다고 말해야합니다) 다른 종류의 테이블을 사용해야합니다. 아래 고정물 / 테이블 스타일을 가장 자주 사용합니다.
- 기둥 고정 장치 – 가장 널리 사용됩니다 (위의 예에서 사용됨). 여기에서 데이터 행은 서로 다른 입력 세트와 예상 출력을 나타냅니다.
- 행 비품 – 일부 값 집합을 반환하는 쿼리 테스트에 사용됩니다.
- 액션 비품 – 일련의 이벤트에 대한 테스트를 실행하는 데 사용됩니다. 이러한 이벤트는 버튼을 클릭하고 값을 확인하는 것과 같을 수 있습니다.
추천:
FitNesse에서 더 많은 것을 탐색 할 수 있도록 개념을 설명하려고 노력했습니다. 테스터의 사고 방식도 변경되어야하고 확장되어야합니다. 우리는 코드 내부를 살펴 보도록 제한하는 것을 그만둬야합니다. 나는 느낀다. 궁극적으로 우리는 코드를 테스트하고 있는데, 코드를보고 그 자리에서 테스트 해보는 것은 어떨까요?
프로그래밍 기술을 연마하고 논리 구축과 구문 학습에 더 중점을 둡니다. 프로그래밍 개념에 정통하고이를 구현하는 연습을하면 FitNesse를 탐색하는 것이 더 쉬워 질 것입니다.
결론
애자일 테스트는 4 가지 유형으로 제공됩니다.
- 자동화 된 단위 테스트 – Junit 사용
- 자동 승인 확인 테스트 – FitNesse 사용
- 자동화 된 UI / 회귀 테스트 – Selenium 또는 QTP 사용
- 수동 테스트
우리는 단위와 수용 계층에서 우리의 최대 테스트를 밀어 내려고 노력해야합니다 . 지금까지 우리는 QTP 및 Selenium과 같은 도구를 사용하여 UI 계층에 대한 대부분의 테스트를 유지하려고 노력해 왔지만 여기서 단점은 UI가 개발되지 않으면 이러한 기능을 테스트 할 수 없다는 것입니다. 결함을 발견 할 때까지 개발자는 다른 기능 개발로 이동했습니다.
반면에 API가 작성된 후 곧바로 테스트 할 수 있다면 개발자는 즉시 수정할 수 있습니다. 이것은 또한 우리가 GUI를 테스트 할 때 더 적은 노력으로 이어질 것입니다. 모든 기능이 테스트되기 때문에 GUI 테스트가 쉬워집니다.
Agile을 사용하면 테스터의 사고 방식도 변경되어야하며 일상적인 테스트 세트에서 벗어나야합니다. 이제 코드를 살펴보고 UI를 사용할 수없는 경우에도 결함을 식별해야합니다.
자바는 생성자를 사용하여 객체 배열을 만듭니다.
저자 정보 : 이것은 STH 팀원 Shilpa C. Roy의 게스트 기사입니다. 그녀는 인터넷 광고, 투자 은행 및 통신과 같은 도메인에서 지난 9 년 이상 소프트웨어 테스트 분야에서 일하고 있습니다.
아래 의견에 귀하의 질문을 알려주십시오.
추천 도서
- 개발자는 좋은 테스터가 아닙니다. 뭐라고?
- 테스터를위한 유용한 무료 화면 캡처 및 주석 도구-qSnap Review
- 개발자와 테스터를위한 가장 인기있는 10 가지 코드 검토 도구
- WebLOAD 검토-WebLOAD로드 테스트 도구 시작하기
- 테스터를위한 상위 15 가지 SOA 테스트 도구
- 소프트웨어 테스터에서 동기 부여를 유지하는 방법은 무엇입니까?
- TestLodge 테스트 관리 도구 검토
- 테스터를위한 소프트 스킬 : 커뮤니케이션 스킬을 향상시키는 방법