오늘은 웹 자동화 셋팅의 마지막 단계인 TestNG를 이클립스에 설치하는 방법에 대해 설명해보겠습니다.
저는 웹 자동화의 annotation(주석)기능을 사용하기 위해서 TestNG를 사용하는데요.
먼저 , TestNG에 대해 알아보도록 하겠습니다.
TestNG란?
Junit과 NUnit에서 영감을 얻은 테스트 프레임워크입니다.
주요 기능은 다음과 같습니다.
- 주석(Annotation)
- 임의의 큰 스레드 풀에서 테스트를 실행가능
- 코드가 다중 스레드로부터 안전한지 테스트
- 유연한 테스트 구성
- 데이터 기반 테스트 지원(@DataProvider 사용)
- 매개변수 지원 등
출처 : testng.org/doc/
TestNG는 unit, functional, end-to-end, integration등 모든 테스트 범주를 포함할 수 있습니다.
그럼 지금부터 이클립스에 TestNG를 추가해보도록 하겠습니다.
eclipse > 메뉴바에서 help>Intall New Software를 클릭합니다.
Install창에서 Add버튼을 눌러 TestNG를 추가해줍니다.
Name, Location을 입력하고 추가버튼을 눌러줍니다.
Name: TestNG
Location: http://dl.bintray.com/testng-team/testng-eclipse-release/
TestNG가 추가되면 선택하고 다음버튼을 클릭합니다.
설치가 완료되고 나면 약관에 동의 후 끝마쳐줍니다.
저번 두번째 포스팅에서 웹 자동화 selenium setting방법에서 대해서 다루었습니다. 이제 저번에 그 자동화 기본 코드를 가지고 @Before class에 셋팅에 관한 코드를 작성하고 @Test와 @Afterclass를 추가한 수정된 버전의 기본 코드를 작성해보겠습니다.
package example;
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
public class sample02{
public WebDriver driver;
@BeforeClass
// 테스트 시작 전 셋팅에 관한 코드
public void setUp() throws Exception{
System.setProperty("webdriver.chrome.driver", "C:\\Users\\eprtm\\Downloads\\chromedriver_win32\\chromedriver.exe");
driver = new ChromeDriver();
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
driver.get("https://www.Tistory.com");
}
@Test
// Test에 해당하는 문구
public void sample_testng() throws Exception{
// 현재 url을 가져와서 저장
String url = driver.getCurrentUrl();
System.out.println("URL : "+url);
}
@AfterClass
// Test가 끝나고 수행
public void tearDown() throws Exception{
// 드라이버 종료
driver.quit();
}
}
위의 코드를 작성하고 실행하면, testng를 사용함으로써 콘솔창에서 결과를 한눈에 확인할 수 있습니다.
이로써 기본적인 웹 자동화 셋팅은 끝났습니다. 다음 포스팅부터는 웹 자동화 코드에 대한 내용을 다루도록 하겠습니다. 읽어주셔서 감사합니다 :)
'자동화(Automation)' 카테고리의 다른 글
Selenium_Scroll in Java (0) | 2022.08.01 |
---|---|
Selenium_Mobile Emulation (0) | 2022.02.02 |
Selenium_isDisplayed(), isSelected(), isEnabled() (0) | 2021.01.23 |
웹 자동화 Setting 2_selenium setting (0) | 2020.10.28 |
웹 자동화 Setting 1 _ jdk 설치 (0) | 2020.10.22 |
댓글