수색…
통사론
- XCUIApplication () // 응용 프로그램의 프록시. 응용 프로그램을 식별하는 정보는 Xcode 대상 설정에서 "대상 응용 프로그램"으로 지정됩니다.
- XCUIElement () // 응용 프로그램의 사용자 인터페이스 요소입니다.
Xcode 프로젝트에 테스트 파일 추가하기
프로젝트를 만들 때
프로젝트 생성 대화 상자에서 "UI 테스트 포함"을 선택해야합니다.
프로젝트를 만든 후
프로젝트를 생성하는 동안 UI target
을 확인하지 못한 경우 나중에 언제든지 테스트 대상을 추가 할 수 있습니다.
Setps :
- 프로젝트가 열린 상태에서
File
->New
->Target
-
iOS UI Testing Bundle
찾기
접근성 식별자
유틸리티에서 액세서 빌 러티가 활성화 된 경우
-
storyboard
선택하십시오. -
the Utilities
확장 -
Identity Inspector
선택 - 스토리 보드에서 요소 선택
- 새로운 액세스 가능성 식별자 추가 (예 :
addButton
)
유틸리티에서 접근성이 비활성화 된 경우
-
storyboard
선택하십시오. -
the Utilities
확장 -
Identity Inspector
선택 - 스토리 보드에서 요소 선택
-
User Defined Runtime Attributes
추가 -
Key Path
유형 -accessibilityIdentifier
-
Type
-`문자열 -
Value
- 요소에 대한 새로운 접근성 식별자 (예제view
)
UITest 파일에서 설정
import XCTest
class StackOverFlowUITests: XCTestCase {
private let app = XCUIApplication()
//Views
private var view: XCUIElement!
//Buttons
private var addButton: XCUIElement!
override func setUp() {
super.setUp()
app.launch()
//Views
view = app.otherElements["view"]
//Buttons
addButton = app.buttons["addButton"]
}
func testMyApp() {
addButton.tap()
view.tap()
}
}
[ ]
에 요소의 접근성 식별자를 추가하십시오.
UIView, UIImageView, UIScrollView
let imageView = app.images["imageView"]
let scrollView = app.scrollViews["scrollView"]
let view = app.otherElements["view"]
UILabel
let label = app.staticTexts["label"]
UIStackView
let stackView = app.otherElements["stackView"]
UITableView
let tableView = app.tables["tableView"]
UITableViewCell
let tableViewCell = tableView.cells["tableViewCell"]
UITableViewCell 요소
let tableViewCellButton = tableView.cells.element(boundBy: 0).buttons["button"]
UICollectionView
let collectionView = app.collectionViews["collectionView"]
UIButton, UIBarButtonItem
let button = app.buttons["button"]
let barButtonItem = app.buttons["barButtonItem"]
UITextField
- 일반 UITextField
let textField = app.textFields["textField"]
- 암호 UITextField
let passwordTextField = app.secureTextFields["passwordTextField"]
UITextView
let textView = app.textViews["textView"]
UISwitch
let switch = app.switches["switch"]
알리미
let alert = app.alerts["About yourself"] // Title of presented alert
UI 테스트 중 애니메이션 사용 안 함
테스트에서는 setUp
을 추가하여 애니메이션을 비활성화 할 수 있습니다.
app.launchEnvironment = ["animations": "0"]
여기서 app
은 XCUIApplication의 인스턴스입니다.
실행 중 점심 및 종료 응용 프로그램
테스트를위한 점심 식사 신청
override func setUp() {
super.setUp()
let app = XCUIApplication()
app.launch()
}
응용 프로그램 종료
func testStacOverFlowApp() {
app.terminate()
}
기기 회전
장치는 XCUIDevice.shared().orientation
에서 orientation
을 변경하여 회전 할 수 있습니다.
XCUIDevice.shared().orientation = .landscapeLeft
XCUIDevice.shared().orientation = .portrait
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow