
전 직장에서 유저가 사용중인 window 정보를 수집하는 프로그램을 운영했었다.당시 client 개발 담당은 아니라서 원본 코드를 볼 일은 잘 없었는데, 문제는 Windows OS만 지원했었다는 것이다.요즘은 기업에서 Mac을 사용하는 비중이 조금 높아지기도 했고 IT업계에선 더 Mac이 대중화 되었는데 Windows에서만 지원하는게 좀 아쉬웠었다.그런 생각이 문득 들어 Python을 이용해 현재 활성중인 window 의 정보를 수집해보았다.Python을 사용한 이유는 Node로 진행해서 Electron으로 프로그램을 만들려고 했었는데, 프로세스 수집 외 부가 작업이 생각보다 많았었다.Python도 Mac과 Windows UI 개발이 가능하고 비교적 쉽게 수집이 가능해서 Python으로 진행했다. Win..

IntelliJ 2024.2 버전에서 새로운 Java Class 생성 시 아래 오류가 발생했다.검색했을 때 대부분 Invalidate Cache를 실행하라는 이야기들이라 그렇게했고 바로 Class가 생성되길래 해결된 줄 알았다.해당 방법은 1회성으로만 유효했고 다시 같은 문제를 만나면 또 Invalidate Cache를 실행해야했다.원인이 제거된 건 아니었던 것이다. 다시 정보를 찾던 중 Jetbrains Youtrack에 등록된 이슈에서 답을 찾을 수 있었다.https://youtrack.jetbrains.com/issue/IJPL-2576/idea-ideaIU-232.8296.17-aarch64-create-class-error위 조언대로 Codota AI Autocomplete for Java an..
Electron은 여러 OS를 지원하다보니 OS별로 예외를 처리해야할 때가 있다.이 때는 Node의 OS 모듈을 이용해 OS를 식별하고 예외처리를 할 수 있다.const os = require('os');// 현재 운영 체제가 macOS인지 확인const isMac = os.platform() === "darwin";// 현재 운영 체제가 Windows인지 확인const isWindows = os.platform() === "win32";// 현재 운영 체제가 Linux인지 확인const isLinux = os.platform() === "linux";module.exports = { isMac, isWindows, isLinux,}; OS 모듈에 대한 자세한 설명 : https://nodejs.o..
본문 내용은 Appium + JUnit 기반에서 진행된 내용입니다.이전 포스트에 이어서 React-Native로 개발 된 앱 프로젝트에서 일부 Component가 XPath로 제어되지 않아 터치로 해결했었다.그 중 드래그가 필요한 Picker UI에서 좌표로 드래그 동작을 구현한 방법이다. int startX = 510; // 드래그 시작 지점의 X 좌표int startY = 1065; // 드래그 시작 지점의 Y 좌표int endY = 616; // 드래그 종료 지점의 Y 좌표TouchAction dragAction = new TouchAction(driver);dragAction.longPress(PointOption.point(startX, startY)) .moveTo(PointOption.poi..
본문 내용은 Appium + JUnit 기반에서 진행된 내용입니다.React-Native로 개발 된 앱 프로젝트에서 일부 Component로 구현된 UI가 XPath로 제어되지 않는 경우가 있었다.버튼을 findElementByXPath로 지정해도 버튼을 찾지 못한다던가.. 모든 화면이 아닌 특정 Component를 사용한 화면에서 발생했었고, 테스트 대상 디바이스가 정해져있었기 때문에 좌표로 해결하는 방향으로 결정했다. 일반적인 Element 조작은 WebElement Class를 이용하지만, 좌표로 제어해야하는 경우는 TouchAction Class를 이용한다. // 버튼을 클릭WebElement cancelBtn = (WebElement) driver.findElementByXPath("...");..
Playwright의 테스팅 화면을 영상으로 녹화하는 방법 중 하나인 playwright-video 라이브러리입니다.playwright-video 라이브러리를 설치하면, 간단한 코드를 통해 영상 녹화를 핸들링할 수 있습니다. 설치 npm i playwright playwright-video @ffmpeg-installer/ffmpeg 활용 예const { saveVideo } = require('playwright-video');test.describe('record video sample', () => { let testTab; let saveVideo; test.beforeAll(async ({ browser }) => { // 테스트 시작 전 영상 녹화 세팅 testTab = awai..
faker.js는 Playwright를 위한 라이브러리는 아니지만 테스트 시 사용자의 입력값을 무작위로 입력하고자 할 때유용하게 사용할 수 있는 라이브러리입니다. 설치npm install --save-dev @faker-js/faker Importimport { faker } from '@faker-js/faker/locale/ko'; 활용 예import { faker } from '@faker-js/faker/locale/ko';// 테스트 데이터 생성const { company, person, internet, phone } = faker;const tempMobile: string = phone.number(); // 임의로 생성한 휴대폰 번호export const fillData = { co..
Playwrightplaywright는 Microsoft에서 개발한 E2E 테스트를 지원하는 도구입니다. Chromium WebKit, Firefox를 포함한 모든 최신 렌더링 엔진을 지원Windows, Linux, MacOS OS 지원Headless mode 지원Android 및 모바일 Safari, Electron 등 다양한 환경 지원 저는 공식 문서를 따라 npm 환경에서 설치 및 실행하였습니다. 설치에 앞서 개발 환경에 node가 설치되어있어야합니다.설치npm init playwright@latest위 명령어를 입력하면 아래 항목을들 추가로 선택하게됩니다.(필수) 설치 명령을 실행 후 TypeScript / JavaScript 둘 중 하나를 선택(필수) 테스트 폴더 이름 지정 (기본값 : tes..
- Total
- Today
- Yesterday
- 아이폰
- 오블완
- SQL
- 제이쿼리
- MySQL
- 자바스크립트
- jQuery
- MAC OSX 10.7
- 자바
- Java
- Programming
- JavaScript
- 오브젝트 C
- 오브젝티브 C
- zero
- Object C
- 아이폰 어플리케이션
- iBATIS
- 아이폰 개발
- iOS 개발
- Spring Framework
- Objective-C
- Objective C
- tomcat
- JSP
- Spring
- oracle
- IT
- iPhone
- 티스토리챌린지
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |