每次我们在UI中更改某些内容时,我们都必须手动准备并获取iTunes Connect列表的375(= 5个屏幕截图* 5种设备类型* 15种语言)屏幕截图。
我正在尝试“利用”iOS 9的新UI测试来自动准备并为每种语言拍摄这些屏幕截图。这应该可以节省大量时间并为我们的用户提供更好的体验,因为我们没有经常更新屏幕截图,因为所涉及的工作很多。
我在互联网上找不到多少帮助,可能是因为这个功能太新鲜了。所以这里有两个基本问题,希望我们能找到一种方法来实现它。
是否可以通过UI测试API将屏幕截图保存到磁盘?
是否可以为XCTestCase进行全新安装?
答案 0 :(得分:11)
这与Xcode 7并不完全相关,但您可以使用snapshot自动截屏。
答案 1 :(得分:5)
是的,您可以使用Xcode UI Testing创建屏幕截图。
xcodebuild -workspace App.xcworkspace \ -scheme "SchemeName" \ -sdk iphonesimulator \ -destination 'platform=iOS Simulator,name=iPhone 6,OS=9.0' test
完成此操作后,要生成屏幕截图,请添加您想要屏幕截图的路径,如下所示:
xcodebuild -workspace App.xcworkspace \ -scheme "SchemeName" \ -sdk iphonesimulator \ -destination 'platform=iOS Simulator,name=iPhone 6,OS=9.0' -derivedDataPath './output' test
./输出将告诉Xcode为每个测试截取屏幕截图。 您可以详细了解here
答案 2 :(得分:3)
- 是否可以通过UI测试API将屏幕截图保存到磁盘?
醇>
您可以手动保存它们(通过"在预览中打开"按钮),但我不知道在测试期间收集它们的API。提交雷达! (https://bugreport.apple.com)
- 是否可以为XCTestCase进行全新安装?
醇>
我不知道如何为每个XCTestCase
实际重新安装您的应用,但您可以uninstall it before running all of your tests,或者XCTestCase
可以<!doctype html>
<#include "../include/imports.ftl">
确保您的应用程序在运行测试之前处于新鲜状态(例如重置用户默认值等)。