반응형
모바일웹 페이지 자동화를 하기 위해, 모바일 에뮬레이션을 이용해서 모바일 화면으로 띄워주는 방법에 대해 포스팅을 하려고 합니다.
이전에 웹 자동화 Setting 포스팅 단계대로 셋팅을 한 뒤, 실행시키면 아래와 같은 웹 화면으로 자동화가 진행됩니다.
이때, 전체 화면이 아닌 모바일 에뮬레이션을 이용한 화면으로 보여주기 위해서는 setup단계에서 //mobile emulation 주석을 단 아래와 같은 코드를 추가시켜 주면 됩니다.
package example;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
public class sample04 {
public WebDriver driver;
@BeforeClass
// 테스트 시작 전 셋팅에 관한 코드
public void SetUp(){
System.setProperty("webdriver.chrome.driver", "C:\\Users\\eprtm\\Downloads\\chromedriver_win32\\chromedriver.exe");
//mobile emulation
Map<String, String> mobileEmulation = new HashMap<>();
mobileEmulation.put("deviceName", "Nexus 5");
ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.setExperimentalOption("mobileEmulation", mobileEmulation);
driver = new ChromeDriver(chromeOptions);
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
driver.get("https://m.naver.com");
}
@Test
// Test에 해당하는 문구
public void sample_main() throws Exception{
// 현재 url을 가져와서 저장
String url = driver.getCurrentUrl();
System.out.println("URL : "+url);
}
@AfterClass
// Test가 끝나고 수행
public void tearDown() throws Exception{
// 드라이버 종료
driver.quit();
}
}
그러면 아래와 같이 Nexus5와 같은 크기의 모바일 에뮬레이션 화면으로 자동화를 실행시킬 수 있습니다.
Nexus5 뿐만 아니라 크롬 개발자도구(F12)로 들어가면, 모바일 디바이스명을 확인할 수 있는데 해당 명칭을 변경하면 특정 디바이스로 에뮬레이션을 실행시킬 수 있습니다.
Map<String, String> mobileEmulation = new HashMap<>();
mobileEmulation.put("deviceName", "iPhone X");
여기까지 java언어를 사용한 모바일 에뮬레이션을 이용한 setup방법에 대해 포스팅했습니다.
이 외에 python이나 ruby언어로 사용하실 분들은 아래의 참고사이트를 이용하면, 셋팅 방법에 대해 나와있으니 참고 부탁드립니다:)
반응형
'자동화(Automation)' 카테고리의 다른 글
Selenium_Wait (0) | 2022.08.05 |
---|---|
Selenium_Scroll in Java (0) | 2022.08.01 |
Selenium_isDisplayed(), isSelected(), isEnabled() (0) | 2021.01.23 |
웹 자동화 Setting 3_TestNG 시작하기 (0) | 2020.11.04 |
웹 자동화 Setting 2_selenium setting (0) | 2020.10.28 |
댓글