Android 自动本地化屏幕截图
有没有一种方法可以自动从windows在android上拍摄本地化的屏幕截图 我为Mac找到了一个工具 但是有没有办法在Windows上实现呢?我需要为11种不同的语言拍摄5张截图,以某种方式实现自动化会很好 编辑 根据@grrrr的回答,我已经实现了自动化,用所有本地化来捕获我的第一个活动。然而,我不知道如何浏览我的应用程序,从几个活动中获取屏幕截图,更改本地化并再次浏览它们。流程应该是这样的: “恩”Android 自动本地化屏幕截图,android,windows,automation,localization,screenshot,Android,Windows,Automation,Localization,Screenshot,有没有一种方法可以自动从windows在android上拍摄本地化的屏幕截图 我为Mac找到了一个工具 但是有没有办法在Windows上实现呢?我需要为11种不同的语言拍摄5张截图,以某种方式实现自动化会很好 编辑 根据@grrrr的回答,我已经实现了自动化,用所有本地化来捕获我的第一个活动。然而,我不知道如何浏览我的应用程序,从几个活动中获取屏幕截图,更改本地化并再次浏览它们。流程应该是这样的: “恩” 第一个活动(scr)>主活动(scr)>设置活动(scr) “de” 第一个活动(scr
第一个活动(scr)>主活动(scr)>设置活动(scr) “de”
第一个活动(scr)>主活动(scr)>设置活动(scr) 等等 编辑2 Atm我是通过在中手动更改活动来实现的
private final CustomActivityTestRule mActivityTestRule = new CustomActivityTestRule<>(StartActivity.class);
private final CustomActivityTestRule mActivityTestRule=新的CustomActivityTestRule(StartActivity.class);
一个接一个地做屏幕截图。是一个很好的指南,指导您如何在自动化测试失败或成功时截图(几乎就是您的本地化用例!)。您可以按照指南创建一个ScreenshotWatcher
,或者根据需要调用CaptureShot
方法来获取所需的屏幕截图。我复制了以下相关课程:
public class ScreenshotWatcher extends TestWatcher {
@Override
protected void succeeded(Description description) {
Locale locale = InstrumentationRegistry.getTargetContext()
.getResources()
.getConfiguration()
.getLocales()
.get(0);
captureScreenshot(description.getMethodName() + "_" + locale.toLanguageTag());
}
private void captureScreenshot(String name) {
ScreenCapture capture = Screenshot.capture();
capture.setFormat(Bitmap.CompressFormat.PNG);
capture.setName(name);
try {
capture.process();
} catch (IOException ex) {
throw new IllegalStateException(ex);
}
}
@Override
protected void failed(Throwable e, Description description) {
captureScreenshot(description.getMethodName() + "_fail");
}
}
我认为这是一个很好的演练,但并不是所有内容都解释清楚。是否有可能与整个项目有关的链接?您具体需要哪些帮助?您是否已经在使用浓缩咖啡来自动化您的测试?这是一个关于如何开始的演练,这是我第一次使用浓缩咖啡。是否有一种方法可以编辑此自动化并设置“路径”以拍摄多个活动的屏幕截图,然后更改本地化。例如“MainActivity(屏幕截图)>FirstActivity(屏幕截图)>ThirdActivity(屏幕截图)”您可以导航到
emptyMainActivityPortrait
中的其他活动,或者您可以为不同的活动创建另一个@Test
,或者您可以将MainActivityScreenshot
子类化,并传入要测试的不同活动是的,我确实更改了活动,并手动逐个执行屏幕截图。只是问问它是否可以自动化。如果我从emptyMainActivityPortrait