我想知道是否有任何关于在WWDC 2015中引入的XCode 7中的新UI测试的文档.如果没有文档,是否有任何用户生产的版本值得关注?
谢谢
如何获得textfieldXCODE7 UITesting 的价值?
var b = XCUIApplication().childrenMatchingType(.textField).elementBoundByIndex(0).stringValue
Run Code Online (Sandbox Code Playgroud) 为什么当我在Xcode中测试我的控制器时一切都很好,但是deinit没有调用方法.这是对的吗?
虽然应用程序正常工作,但它很好,但不适用于UITest目标.
对于复杂的结构,模拟器会一遍又一遍地分配更多的对象,并且......根本不会解除分配.因此,在较慢的机器上,应用程序通常会在没有任何理由的情况下退出...并且无法完成测试.
使用Xcode 8,iOS 10,macOS Sierra.
我一直试图在Xcode 7自动UI测试中拦截和存根/模拟HTTP请求,使用像OHHTTPStubs这样的工具,没有运气.
以下是我尝试在UI测试文件的setUp方法中使用OHHTTPStubs捕获任何HTTP请求的示例:
override func setUp() {
super.setUp()
let matcher: OHHTTPStubsTestBlock = { (request) -> Bool in
return true
}
OHHTTPStubs.stubRequestsPassingTest(matcher) { (response) -> OHHTTPStubsResponse! in
return OHHTTPStubsResponse.init()
}
}
Run Code Online (Sandbox Code Playgroud)
有没有关于UI测试工作的方式可以防止这种情况?有没有人能够实现这一目标?
在Xcode 7中,Apple添加了XCUITest作为测试应用程序UI的新方法.
我想迁移旧的测试脚本,但是在使用XCUITest时没有找到有关如何设置自定义核心位置的任何信息.
老电话:
UIATarget.localTarget().setLocation({latitude: '48.21048', longitude: '16.3595'});
Run Code Online (Sandbox Code Playgroud)
我还尝试通过启动参数找到有关如何通过启动参数提供GPX-File作为解决方法的一些信息,但是如果可行且密钥是什么则没有成功和想法.
有谁知道如何使用XCUITest设置自定义核心位置?
当我尝试在我的设备上运行我的UI测试时,我收到错误:
XCTRunner [1476:104021]无法加载捆绑包"AppUITests",因为它已损坏或缺少必要的资源.尝试重新安装捆绑包.2015-11-23 20:58:53.903 XCTRunner [1476:104021](dlopen_preflight(/var/mobile/Containers/Bundle/Application/FAC2EFB2-92C6-4668-96A7-C77CC5C4AE87/AppUITests-Runner.app/PlugIns/AppUITests. xctest/TrueMostUITests):未加载库:@ rpath/UIColor_Hex_Swift.framework/UIColor_Hex_Swift参考自:/var/mobile/Containers/Bundle/Application/FAC2EFB2-92C6-4668-96A7-C77CC5C4AE87/AppUITests-Runner.app/PlugIns/AppUITests .xctest/AppUITests原因:图片未找到)
在这种情况下,它是"UIColor_Hex_Swift.framework",它位于我的podfile中.但是我从cocoapods加载哪个框架并不重要.它会在每个框架上失败.
我已经尝试更改pod文件,清理,删除派生数据,重新安装pod和更改签名.不,我没有想法.
如果我使用模拟器,一切正常.
这是我的pod文件:
platform :ios, '9.0'
workspace './AppWorkspace'
use_frameworks!
inhibit_all_warnings!
link_with 'App', 'AppTests', 'AppUITests'
target 'App', :exclusive => false do
pod 'SwiftyJSON', '~> 2.3.0'
pod 'MQTTKit', :git => 'https://github.com/mobile-web-messaging/MQTTKit.git'
pod 'PromiseKit', '~> 3.0.0'
pod 'UIColor_Hex_Swift',:git => 'https://github.com/yeahdongcn/UIColor-Hex-Swift.git', :branch => 'Swift-2.0'
pod 'OHHTTPStubs', '~> 4.3.0'
pod 'Alamofire', '~> 3.1.0'
end
def testing_pods()
# pod 'SwiftyJSON', '~> 2.3.0'
# pod 'MQTTKit', :git => 'https://github.com/mobile-web-messaging/MQTTKit.git'
# pod 'PromiseKit', '~> 3.0.0'
pod 'UIColor_Hex_Swift',:git => …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用XCTest UI测试来测试我的UI,并且在我的应用程序中遇到了测试UIImageViews的麻烦(点击测试,存在等).
在XCUIElementType的列表中没有这样的类型,当我查看superview的子节点时,由于某些原因我的UIImageViews没有列在那里,尽管我可以在屏幕上和Xcode的UI检查器中看到它们.
有人有过这种问题吗?
我们确实让CI与Xcode一起工作有麻烦.我们遇到了这个问题Could not determine bundle identifier for xxxTest TEST_HOST: some path that does not exist.
到目前为止我们做了什么:
我们的项目有以下目标:
找到解决方案
题:
已知问题:
在我的Jenkins CI slave上的iOS应用程序上运行UI测试时,UI不正确,我的测试失败.在本地,相同的UI是预期的,测试通过.
我无法解决这个问题,我无法在远程计算机上进行调试.因此,我想添加日志记录以查看应用程序正在做出哪些决定,以找出UI在远程Jenkins从站中错误显示的原因.
测试日志输出不包含来自应用程序(通过NSLog)的日志输出,也无法NSLog在派生数据输出文件夹中的任何.xcactivitylog文件中找到应用程序调用中的任何字符串.
当UI测试运行时,我在哪里可以找到我的应用程序的日志输出?这是使用运行iOS 9.3模拟设备的Xcode 8.2.
我目前正在使用Fastlane Snapshot自动为我的应用程序截取屏幕截图.这一切都基于UI测试.
我正在尝试将相同的功能添加到iMessage App/Extension.
所以目前我有一个测试,通过点击按钮,填写文本字段,截取屏幕截图等.
完成所有这些后,我希望它关闭应用程序(单击主页按钮),打开iMessage,与我的iMessage应用程序交互并在那里截取一些屏幕截图.
这可能吗?如果是这样我怎么能实现这个目标?自动化这个应用程序的屏幕截图非常棒,我也希望能够为iMessage应用程序做到这一点.
xcode-ui-testing ×10
ios ×6
xcode ×5
xctest ×4
swift ×2
ui-testing ×2
xcode7 ×2
build ×1
objective-c ×1
osx-server ×1
screenshot ×1
uiimageview ×1
xcode-bots ×1