2016-09-10 21 views
7

Tôi nhận thấy rằng có hai tùy chọn trong trang người đàn ông của xcodebuild.Làm thế nào để sử dụng xcodebuild với cờ chỉ thử nghiệm và kiểm tra -skip?

-only-testing:TEST-IDENTIFIER  

hạn chế sự kiểm tra bằng cách xác định các xét nghiệm để đưa vào và không bao gồm các xét nghiệm khác

-skip-testing:TEST-IDENTIFIER  

hạn chế sự kiểm tra bằng cách xác định các xét nghiệm để loại trừ, nhưng bao gồm các xét nghiệm khác

Những gì tôi thử:

xcodebuild -workspace MyWorkSpace.xcworkspace/
-sdk iphonesimulator/
-destination id=7F52F302-C6AF-4215-B269-39A6F9913D5B/
-scheme SCHEME-iOS/
test -only-testing:??? 

TEST-IDENTIFIER là gì?

Trả lời

4

Bạn có thể kiểm tra video https://developer.apple.com/videos/play/wwdc2016/409/

tôi đã sử dụng nó như thế này:

-only thử nghiệm: UITests/TC_TextArea/test1

cho thử nghiệm của tôi tree. Hoạt động tốt

Full lệnh trông như sau:

command = 'xcodebuild test 
-workspace ' + pathToProjectWorkspaceFolder + '/project.xcworkspace 
-scheme yourApp.app 
-destination "platform=iOS,name=' + deviceName + '" 
-only-testing:UITests/TC_TextArea/test1' 
+3

TEST-IDENTIFIER là cách Xcode ánh xạ các thử nghiệm của bạn. Kiểm tra cây thử nghiệm của bạn - tab thứ 5 bên trái của bạn. Để làm việc bạn luôn phải bắt đầu từ gốc, nghĩa là 'kiểm tra bỏ qua kiểm tra xcodebuild: MyTestsBundleName/MyClassName/MyTestCaseName' –

10

Giống như những gì Marcio nói, đó là một con đường như chuỗi.

Ví dụ, nói rằng bạn có một chương trình mang tên MyScheme, một mục tiêu thử nghiệm MyUITests, và thử nghiệm lớp LoginTest, sau đó thử nghiệm phương pháp testUserLogin, chỉ được chạy trên các phương pháp, bạn có thể chạy

xcodebuild -workspace Envoy.xcworkspace \ 
    -scheme MyScheme \ 
    -sdk iphonesimulator \ 
    -destination 'platform=iOS Simulator,name=iPad Air 2,OS=10.1' 
    '-only-testing:MyUITests/LoginTest/testUserLogin()' test 

Tương tự như vậy, nếu bạn muốn chạy tất cả các thử nghiệm trong LoginTest, tại đây bạn chạy

xcodebuild -workspace Envoy.xcworkspace \ 
    -scheme MyScheme \ 
    -sdk iphonesimulator \ 
    -destination 'platform=iOS Simulator,name=iPad Air 2,OS=10.1' 
    '-only-testing:MyUITests/LoginTest' test 
+0

là một số cách để sử dụng cụm từ thông dụng cho tham số này. Một cái gì đó giống như -only-testing: MyUItests/LoginTest [1-2] ??? – emoleumassi

+2

Tôi vừa cập nhật câu trả lời này, nó đã sai một phần và khiến tôi lãng phí khoảng 30 phút. Trong đối số '-only-testing' bạn chỉ định đích không phải lược đồ. –

Các vấn đề liên quan