테스트 자동화의 편리한 도구
11759 단어 테스트 자동화Jenkins셀레늄robotframework
소개
최근 RPA는 유행하고 있는 것 같네요. 테스트 자동화도 RPA의 범주에 있는지 생각합니다.
테스트 자동화에는 여러 가지 도구가 있지만 무료로 사용할 수있는 도구는
등은 유명합니다.
Selenium이란?
Selenium은 여러 도구로 구성된 테스트 시스템입니다.
WebDriver
라이브러리 도입
build.gradle// https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java
compile group: 'org.seleniumhq.selenium', name: 'selenium-java', version: '3.141.59'
// https://mvnrepository.com/artifact/commons-io/commons-io
compile group: 'commons-io', name: 'commons-io', version: '2.6'
로컬 WebDriver를 시작하고 테스트해 봅니다.
Selenium.javapackage selenium;
import java.io.File;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.apache.commons.io.FileUtils;
import org.openqa.selenium.By;
import org.openqa.selenium.OutputType;
import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
public class Selenium {
private static DateFormat DF = new SimpleDateFormat("yyyyMMdd HHmmssSSS");
public static void main(String[] args) throws Exception {
// http://chromedriver.chromium.org/downloads
// ドライバを設定
System.setProperty("webdriver.chrome.driver", "/selenium/76_driver/chromedriver.exe");
WebDriver driver = new ChromeDriver();
// ブラウザ起動して、yahooをアクセスする
driver.get("https://www.yahoo.co.jp/");
// yahooのトップページのエビデンスを作成する
makeEvidence(driver);
// キーワード入力欄の要素を取得する
WebElement searchBox = driver.findElement(By.name("p"));
// キーワード「blockchain」を入力する
searchBox.sendKeys("blockchain");
// キーワードを入力した状態のエビデンスを取得する
makeEvidence(driver);
// 検索を行う
searchBox.submit();
// 検索結果のエビデンスを作成する
makeEvidence(driver);
// ブラウザを閉じる
driver.quit();
}
/**
* エビデンスを作成する
*
* @param webdriver Webドライバ
* @throws Exception
*/
public static void makeEvidence(WebDriver webdriver) throws Exception {
String fileName = "c:/data/evidence/" + DF.format(new Date()) + ".png";
File src = ((TakesScreenshot) webdriver).getScreenshotAs(OutputType.FILE);
File dest = new File(fileName);
// ファイルを移動
FileUtils.moveFile(src, dest);
}
}
원격 WebDriver를 시작하고 테스트해보십시오.
Selenium Grid 서비스를 구축하여 원격 서버에서 테스트 할 수 있습니다.
Docker와 jenkins에서도 Selenium Grid 서비스를 쉽게 만들 수 있습니다.
Selenium.java// Selenium Gridがある場合はリモートサーバで実行できます。
// Jenkinsの場合はwebdriverの設定が必要です。
DesiredCapabilities chromeCapabilities = DesiredCapabilities.chrome();
//chromeCapabilities.setVersion("78");
WebDriver driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), chromeCapabilities);
WebDriver 버전과 실제 설치한 버전이 맞지 않으면 아래 오류가 발생합니다.
Exception in thread "main" org.openqa.selenium.SessionNotCreatedException: session not created: This version of ChromeDriver only supports Chrome version 78
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:53'
${JENKINS_HOME}/Jenkins/tools/chromedriver 드라이버를 교체하여 대응해야 합니다.
참고 URL: htps : // 우우키. 지킨킨 s. 이오 / ぢ sp y / 지 킨 킨 S / 세이 니 m + P ㅅ 긴
Selenium IDE
설치
Chrome : htps // ch 로메. 오, ぇ. 이 m / ぇ bs 잡아 / 싶은 l / 세에 에 맘에 / 모이오 kf 또는 hbdckld jj ぢ 오 ck 하면 lp 호kd? hl = 그럼
Firefox : htps : // 아동 s. 모잖아. 오 rg / 자 / 푹신 푹신 x / 아동 / 세이 니메 /
사용해보기
· 시작
·Create a new project
· 프로젝트 화면
· 녹음
START RECORDING 버튼을 누르면 화면 조작을 실행합니다. 중지하면 프로젝트에 반영됩니다.
・재생
· 재생 결과 : 문제없이 실행되었습니다.
RobotFramework란?
Robot Framework is a generic open source automation framework for aceptance testing, aceptance test driven development (ATDD), and robotic process automation (RPA).
설치
pip install robotframework
실행 예
robot QuickStart.rst
API
샘플
이상
Reference
이 문제에 관하여(테스트 자동화의 편리한 도구), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/chenglin/items/eb907e606260126d82d0
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
// https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java
compile group: 'org.seleniumhq.selenium', name: 'selenium-java', version: '3.141.59'
// https://mvnrepository.com/artifact/commons-io/commons-io
compile group: 'commons-io', name: 'commons-io', version: '2.6'
package selenium;
import java.io.File;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.apache.commons.io.FileUtils;
import org.openqa.selenium.By;
import org.openqa.selenium.OutputType;
import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
public class Selenium {
private static DateFormat DF = new SimpleDateFormat("yyyyMMdd HHmmssSSS");
public static void main(String[] args) throws Exception {
// http://chromedriver.chromium.org/downloads
// ドライバを設定
System.setProperty("webdriver.chrome.driver", "/selenium/76_driver/chromedriver.exe");
WebDriver driver = new ChromeDriver();
// ブラウザ起動して、yahooをアクセスする
driver.get("https://www.yahoo.co.jp/");
// yahooのトップページのエビデンスを作成する
makeEvidence(driver);
// キーワード入力欄の要素を取得する
WebElement searchBox = driver.findElement(By.name("p"));
// キーワード「blockchain」を入力する
searchBox.sendKeys("blockchain");
// キーワードを入力した状態のエビデンスを取得する
makeEvidence(driver);
// 検索を行う
searchBox.submit();
// 検索結果のエビデンスを作成する
makeEvidence(driver);
// ブラウザを閉じる
driver.quit();
}
/**
* エビデンスを作成する
*
* @param webdriver Webドライバ
* @throws Exception
*/
public static void makeEvidence(WebDriver webdriver) throws Exception {
String fileName = "c:/data/evidence/" + DF.format(new Date()) + ".png";
File src = ((TakesScreenshot) webdriver).getScreenshotAs(OutputType.FILE);
File dest = new File(fileName);
// ファイルを移動
FileUtils.moveFile(src, dest);
}
}
// Selenium Gridがある場合はリモートサーバで実行できます。
// Jenkinsの場合はwebdriverの設定が必要です。
DesiredCapabilities chromeCapabilities = DesiredCapabilities.chrome();
//chromeCapabilities.setVersion("78");
WebDriver driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), chromeCapabilities);
Exception in thread "main" org.openqa.selenium.SessionNotCreatedException: session not created: This version of ChromeDriver only supports Chrome version 78
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:53'
Robot Framework is a generic open source automation framework for aceptance testing, aceptance test driven development (ATDD), and robotic process automation (RPA).
설치
pip install robotframework
실행 예
robot QuickStart.rst
API
샘플
이상
Reference
이 문제에 관하여(테스트 자동화의 편리한 도구), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/chenglin/items/eb907e606260126d82d0텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)