小编Mar*_*Han的帖子

Github 可重用工作流程:如何使用上次提交(或分支头)的工作流程而不是硬编码分支名称/发布版本?

我正在使用 GitHub 操作设置可重用的工作流程:https://docs.github.com/en/actions/learn-github-actions/reusing-workflows

由于被调用者工作流程和调用者工作流程都位于同一存储库中,因此我想在调用工作流程的uses语句中引用被调用工作流程的最新提交。

例子:

uses: owner/repo/.github/workflows/called-workflow.yml@${{GITHUB_SHA}}
Run Code Online (Sandbox Code Playgroud)

${{GITHUB_SHA}}不会被插值,所以我收到以下错误:

Invalid workflow file : .github/workflows/calling-workflow.yml#L1
handling usage of workflow "owner/repo/.github/workflows/called-workflow.yml@${{GITHUB_SHA}}": can't obtain workflow file: reference to workflow should be either a valid branch, tag, or commit
Run Code Online (Sandbox Code Playgroud)

ref在工作流程中调用工作流程时,如何将其设置为最新提交?

github github-actions

14
推荐指数
1
解决办法
4728
查看次数

AndroidX.Test ActivityScenario:java.lang.AssertionError:Activity 永远不会变成请求状态“[RESUMED]”(最后一个生命周期转换 =“STOPPED”)

ActivityScenario 替代了 Robolectric 中的 ActivityController 和 ATSL 中的 ActivityTestRule。

从 ATSL 重构到 AndroidX 测试时,我使用此代码在每次浓缩咖啡测试之前启动我的 IndexActivity。

    @Before
public void launchActivity() {
    ActivityScenario<IndexActivity> scenario = ActivityScenario.launch(IndexActivity.class);
}
Run Code Online (Sandbox Code Playgroud)

但是,我的测试有 80-90% 的时间会停止并抛出此错误。

java.lang.AssertionError:Activity 永远不会成为请求状态“[RESUMED]”(最后一个生命周期转换 =“STOPPED”)

在尝试进行故障排除时,我将上述内容更改为:

@Before
public void launchActivity() {
    ActivityScenario<IndexActivity> scenario = ActivityScenario.launch(IndexActivity.class);
    scenario.moveToState(Lifecycle.State.RESUMED);
}
Run Code Online (Sandbox Code Playgroud)

但是,我现在 100% 的时间都会遇到相同的错误。

根据文档,我不确定为什么会发生这种情况。

我正在使用 AndroidX Test Orchestrator 并在带有 Api 28 的模拟器上进行测试

完整的 StackTrace 测试在这里:

10:54:42 V/InstrumentationResultParser: java.lang.AssertionError: Activity never becomes requested state "[RESUMED]" (last lifecycle transition = "STOPPED")
10:54:42 V/InstrumentationResultParser: at androidx.test.core.app.ActivityScenario.waitForActivityToBecomeAnyOf(ActivityScenario.java:228)
10:54:42 V/InstrumentationResultParser: at androidx.test.core.app.ActivityScenario.moveToState(ActivityScenario.java:368) …
Run Code Online (Sandbox Code Playgroud)

android android-testing android-espresso androidx

7
推荐指数
1
解决办法
6070
查看次数

什么是AndroidX.Test框架,它如何影响我的单元/机器人/咖啡测试?

我已经通过Android文档中的Test Android Apps进行了测试。Google推出了AndroidX测试,但是我对其含义仍然感到困惑。

我将MVVM Android体系结构组件与ViewModel,LiveData一起使用。

我需要使用Android X Framework的哪些部分?

View(Activity.Fragments)->浓咖啡?

ViewModel(with LiveData)-> RoboElectric吗?

模型-> JUnit还是RoboElectric?

为什么Google仍然使我们对许多库感到困惑,为什么它们不能在同一个Framework(Espresso)下移动所有本地测试,工具测试以及所有内容?

android android-testing android-espresso androidx

-1
推荐指数
1
解决办法
541
查看次数