728x90
반응형
SMALL

분류 전체보기 219

5. 프로젝트 환경 설정

IntelliJ 프로젝트 만들기 이제 IntelliJ로 프로젝트 환경 설정을 해보자. 우선, Gradle 프로젝트를 하나 만들자. 이름과 경로는 적절하게 설정을 해준다. Build system은 Gradle로 설정하자. 난 Gradle을 좋아하니까. JDK버전은 11이상이면 좋은데 난 가장 최신 버전인 21을 사용하겠다. 그 외 나머지는 기본 설정으로하고 'Create' 클릭 build.gradle 가장 먼저 확인할 파일은 역시 build.gradle 파일이다. plugins { id 'java' } group = 'kro.kr.tbell' version = '1.0.0' repositories { mavenCentral() } dependencies { testImplementation platform..

테스트 자동화 2024.04.17

4. Appium Inspector 연결

이제 Appium Inspector를 사용해서 UI 테스트를 하고자하는 App과 연결해보자. UiAutomator2 Driver 설치 실행 하기전 "UiAutomator2" Driver를 설치해야 한다. appium driver install uiautomator2 성공적으로 설치가 되면 다음과 같은 화면이 나오면 된다. Appim Server 실행 이제 appium을 실행한다. appium 이러한 화면이 나오면 성공! Appium Inspector 실행 이제 Appium Inspector를 실행한다. Remote Host: 0.0.0.0 Remote Port: 4723 Remote Path: / Capability Builder appium:udid: 연결할 Device udid platformName..

테스트 자동화 2024.04.17

3. APK 설치

App 테스트를 하려면 App을 설치할 Device가 필요하다. 이 때 두가지 경우로 나눌 수 있다. Emulator: Android Virtual Device (AVD) Real Device Emulator를 사용하는 경우에는 Android Studio를 사용해서 AVD를 설치하면 된다. 이거는 이 포스팅 범주에서 벗어난 범위이기 때문에 여기에 작성하지는 않겠다. Real Device를 사용하는 경우에는 USB Debugging을 활성화 시키면 된다. 나의 경우 Real Device를 사용할 것. PC에 Real Device를 연결하고, USB Debugging 활성화가 됐다고 가정하고 시작한다. Real Device에 APK 설치 우선, 내 APK 경로는 다음 경로에 있다. /Users/choichi..

테스트 자동화 2024.04.17

2. Appium

멀티 플랫폼(Web, Mobile, Desktop, ...)을 대상으로 UI 자동화 테스트를 할 수 있게 해주는 오픈 소스 프로젝트인 Appium. 이 Appium을 사용해서 Mobile App 자동화 테스트를 진행해 볼 생각이다. Appium Install 우선, Appium을 사용하려면 설치를 해야한다. Install Appium - Appium Documentation Install Appium You can install Appium globally using npm: Note Other package managers are not currently supported. After installation, you should be able to run Appium from the command l..

테스트 자동화 2024.04.17

1. BDD, Gherkin, Cucumber

테스트 자동화 인프라 구축 프로젝트를 여러번 진행해 오면서 알게된 내용과 필요한 내용을 정리하고자 한다. BDD(Behavior Driven Development) 행위 주도 개발이라는 뜻의 개발방법론인 BDD. 소프트웨어 개발 과정을 개선하기 위해 사용되는 방법론이다. Agile 개발 방법론의 일종으로, 소프트웨어 프로젝트의 개발을 가이드하기 위해 행동 기반의 언어를 사용한다. 행동 기반의 언어라는 건 이런 것이다. 1. B 화면이 보인다. 2. B화면의 우측 상단에 [A] 버튼을 클릭한다. 3. 클릭한 버튼 하단 셀렉트 박스에 [...] 텍스트가 확인된다. 이 방법론의 핵심은 개발자, 테스터, 비즈니스 분석가 등 프로젝트에 참여하는 모든 사람이 소프트웨어의 동작을 명확하고 이해하기 쉬운 방식으로 정의..

테스트 자동화 2024.04.17

Hash Table

Hash Table은 Key/Value Pair를 빠르게 저장하고 읽을 수 있는 자료구조이다. 파이썬에서 Dictionary라고 부르는 것이 이 Hash Table이다. 예를 들어, Key: Food, Value: Kimchi를 Hash Table에 저장하고자 하면 Hash Table한테 Key가 Food고 Value가 Kimchi인 이 Pair를 저장해 줘! 하고 저장을 한 다음 이후에 Food라는 Key의 Value가 어떻게 돼?라고 물어보면 Hash Table이 Kimchi입니다라고 말해주는 자료구조. Hash Table의 구현 원리 이름 그대로 Table(배열)과 Hash Function으로 구성되어 있다. Hash Function은 임의의 길이를 갖는 임의의 데이터를 고정된 길이의 데이터로 매핑..

자료구조 2024.04.16

Binary Search Tree

Binary Search Tree는 진짜 중요한 개념이다.Binary Tree를 저번 시간에 배웠고 이 Binary Tree를 다시 상기해보면 자식이 최대 2개까지만 있는 노드로만 구성되어 있는 트리를 Binary Tree라고 했고 이 트리를 탐색하는 방법 중 대표적인 두 가지 DFS, BFS가 있다고 했다. DFS(Depth First Search)는 깊이 우선 탐색으로 밑으로 더 내려갈 수 없을때까지 계속 아래로 찾아나가는 방식. BFS(Breadth First Search)는 한 노드의 모든 라인을 다 검색하고 그 바로 다음 아래 라인을 다 검색해가면서 찾아내는 방식이라고 했다. Binary Search TreeBinary Search Tree는 Binary Tree에 특정한 룰을 추가한 트리구조이..

자료구조 2024.04.16

Tree와 BFS / DFS

우선 BFS, DFS를 알기 전 Tree를 알아야 하는게 먼저더라. Tree 트리란, 부모 자식 관계를 나타낼 수 있는 자료 구조다. 다음 그림이 트리라고 말 할 수 있다. - 노드 하나에 한개의 Parent 노드가 있을 수 있다. - 노드 하나에 여러개의 Child 노드가 있을 수 있다. 이런 유형의 자료구조는 실생활에서도 너무 많이 접해볼 수 있다. 회사 조직도 가족 관계도 File System 이런 트리 중 특별한 트리가 있는데 'Binary Tree'라는 게 있다. Binary Tree 한 노드에 Child 노드가 최대 2개까지만 있는 트리를 Binary Tree라고 한다. 위 그림은 그럼 Binary Tree라고 할 수 없다. 왜냐하면, 한 노드(Node 1)가 Child Node를 3개까지도 ..

자료구조 2024.04.16

Stack

Stack은 위에만 구멍이 뚫린 박스라고 생각하면 된다. 이 그림이 Stack 구조이다. 먼저 들어간 데이터가 가장 마지막에 나온다. 가장 마지막에 들어간 데이터가 가장 먼저 나온다. LIFO. Stack은 중간에 데이터를 넣는것도 불가능하고 맨위에 데이터를 새로 넣거나 맨위에 있는 데이터를 빼거나해야 한다. 코드적으로 접근해보기 Stack은 보통 이러한 메서드들을 가지고 있다. pop(): 가장 최근에 추가된 데이터 빼기 push(item): 데이터 새로 추가하기 peek(): 가장 최근에 추가된 데이터 읽기 isEmpty(): Stack이 비어있는지 확인하기 다음 그림과 같이 사이즈가 7인 Stack이 있다고 해보자. 1. 이 상태에서 push(8)을 하면 다음 그림이 된다. 2. 이 상태에서 또 p..

자료구조 2024.04.15

Queue

이번엔 Queue를 정리해보자. Queue는 위 아래 모두 구멍이 있는 박스라고 생각을 하면 된다. 그림을 보면 데이터는 위에서만 넣을 수 있고 빠지는 건 아래에서부터 빠진다. 이런 구조라면 먼저 들어간 데이터가 먼저 나오는 구조가 된다. Queue는 FIFO(First In First Out) 구조이다. 코드적으로 생각해보기 Queue가 가지고 있는 보통의 대표적인 메서드는 다음과 같은 것들이 있다. enqueue(item): 데이터 추가하기 dequeue(): 가장 오래된 데이터 빼기 peek(): 가장 오래된 데이터 보기 isEmpty(): Queue가 비었는지 확인하기 비어있는 사이즈가 7인 큐가 있다. 1. 이 상태에서 데이터 1을 넣으면 다음 모양이 된다. 2. 그리고 데이터 2를 또 추가적으..

자료구조 2024.04.15
728x90
반응형
LIST