小编Han*_*ans的帖子

AzureDevops:测试失败时如何发布测试结果?

我有一些用 编写的单元测试jest。显然,有时他们会失败。我想将结果发布到构建Test部分。问题是PublishTestResults@2如果前一个任务失败,任务就永远不会运行,因此构建的测试部分没有数据。在这种情况下,我得到的是消息##[error]Bash exited with code '1'.

这是我的azure-pipelines.yml

- script: npm run test:publish
    displayName: "Run Unit Tests"
- script: npm run build
    displayName: "Build"
- task: PublishTestResults@2
    displayName: "Publish unit test result"
    inputs:
      testResultsFiles: "unit_test_report.xml"
      testRunTitle: "Unit tests with Jest"
      mergeTestResults: false
      searchFolder: "$(Build.SourcesDirectory)"
      condition: always()
      failTaskOnFailedTests: false
Run Code Online (Sandbox Code Playgroud)

我缺少什么?

node.js jestjs azure-devops

5
推荐指数
1
解决办法
2444
查看次数

当调用派生类中的方法时,基类是否有可能获得通知?

考虑以下小设计:

public class Parent
{
  public event EventHandler ParentWentOut;
  public virtual void GoToWork()
  {
     ParentWentOut();
  }
}

public class Mother : Parent
{
   public override void GoToWork()
   {
     // Do some stuff here
     base.GoToWork(); // <- I don't want to write this in any derived class. 
                      //    I want base class's method to be automatically called.
   }
}
Run Code Online (Sandbox Code Playgroud)

是否有任何机制可以Parent.GoToWork隐式地自动调用方法,只要此方法在后代的重写版本(此处为Motherclass)中完成?

如果有其他语言而不是C#能够这样做,我将非常感谢知道.

c# language-agnostic oop

3
推荐指数
1
解决办法
79
查看次数

直接绑定到 value 属性而不是 ngModel

要将输入的值绑定到属性,我们使用 ngModel 指令。例如:

<input type='text' [(ngModel)]='model' />
Run Code Online (Sandbox Code Playgroud)

为什么我们不能简单地value对输入元素的属性使用绑定?

<input type='text' [(value)]='model' />
Run Code Online (Sandbox Code Playgroud)

angularjs angular

3
推荐指数
1
解决办法
3024
查看次数

.NET Core 中的日期时间精度

继 Eric Lippert多年前关于 精度的帖子DateTime之后,我在装有 Windows 10 的同一台计算机上对 .netcore 和 .NET Framework 4.5.2 运行了他的测试。

        var n = 1000;
        int i = 0;
        long[] diffs = new long[n];
        while (i++ < n-1)
        {
            if (ticks != DateTime.Now.Ticks)
            {
                var newTicks = DateTime.UtcNow.Ticks;
                var diff = newTicks - ticks;
                diffs[i] = diff;
                ticks = newTicks;
            }
        }
        foreach (var d in diffs)
        {
            if (d == 0)
                Console.WriteLine("same");
            else
                Console.WriteLine(d);

        }
Run Code Online (Sandbox Code Playgroud)

.NET Framework 4.5.2 上的结果符合预期:输出中有一些随机“相同”,这意味着DateTime某些子级别不精确。

然而,.NET core 上的结果完全不同:输出中没有“相同”。没有两个 …

.net c# datetime .net-core

2
推荐指数
1
解决办法
1886
查看次数

为什么"异步void"方法同步运行?

Eric Lippert 在这里说:

无法等待返回异步方法的void; 这是一种"火与死"的方法.它确实异步工作 ......

它确实异步工作吗?

为了测试它,我制作了一个Windows窗体应用程序并处理了一个任意事件.在处理程序内部,我开始进行大量计算.显然,它会阻止UI响应:

this.KeyPress += Form1_KeyPressed;
....
private async void Form1_KeyPressed(object sender, EventArgs e)
{
   for(int i=0; i<int.max; i++)
      ;
}
Run Code Online (Sandbox Code Playgroud)

在Eric的回答中我错过了什么?

c# asynchronous async-await

1
推荐指数
3
解决办法
3259
查看次数

:not(:empty):first-of-type 不起作用?

我想在第一个具有 类的非空元素之前显示文本error。我用过.error:not(:empty):first-of-type::before但是没用。我缺少什么?

.error:not(:empty):first-of-type::before {
    content: attr(seq);
    display: block;
    background-color:red;
}
Run Code Online (Sandbox Code Playgroud)

不起作用:

<div>
    <p class="error" seq="Error #1" ></p>
    <p class="error" seq="Error #2">2</p>
    <p class="error" seq="Error #3">3</p>
    <p class="error" seq="Error #4"></p>
    <div><b> Some text here  </b>
    <p></p>
</div>
Run Code Online (Sandbox Code Playgroud)

工作正常:

 <div>
    <p class="error" seq="Error #1" >1</p>
    <p class="error" seq="Error #2">2</p>
    <p class="error" seq="Error #3">3</p>
    <p class="error" seq="Error #4"></p>
    <div><b> Some text here  </b>
    <p></p>
</div>
Run Code Online (Sandbox Code Playgroud)

https://jsfiddle.net/71L7nvoy/

PS:我也尝试过:firts-child。也没起作用。

html css css-selectors

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