小编Typ*_*ter的帖子

是否可以使用业力运行并行测试

目前,我们已经接近1000个用jasmine/typescript编写的单元测试.当我运行它们时,它们在铬上需要多达5分钟.我们确实有一些单元测试也可以处理DOM.例如,验证是否存在具有指定文本的按钮.我们有许多文件来分发这些测试.我们注意到,当我们运行单个文件并总结所花费的总时间时,它远远低于我们一次运行所有测试的时间.这就是为什么我们在想是否有办法并行运行测试?计划是划分测试并并行运行.

jasmine karma-runner karma-jasmine

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

有没有办法批量处理 Karma - Angular 单元测试?

我们面临一个问题,即我们的测试在某个时间点后开始失败或运行速度极慢。我在网上看到其他人也面临问题的文章。这些失败的主要原因是浏览器在处理 DOM 时消耗了内存。我们正在使用种子项目,它使用 SystemJS 构建我们的应用程序。我们当前的 Angular 版本是 2.2.3。

所以,我正在考虑一种解决方法,我可以并行处理我们的测试运行(即运行多个 karma 服务器,我确实尝试过,但它开始消耗 100% CPU)或批处理。因此,批量小测试运行将确保业力停止并再次启动。

有办法吗?

另外,如果我们能够做到这一点,如何获得一致的覆盖范围?我们正在使用伊斯坦布尔。

如果您还有其他问题,请告诉我。

例如,我们的服务和模型相关测试在 3 秒内运行(500 多个测试),但我们的组件测试(900 多个)需要 15分钟

unit-testing karma-runner karma-jasmine karma-coverage angular

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

Angular 2性能:与数据成员绑定是否比函数绑定更好?

我想对绑定到数据成员的性能是否比绑定到函数的性能更好一些?

例如,以下哪个陈述将有更好的表现?

1)

<myComp *ngIf="isThisTrue"></mycomp>
Run Code Online (Sandbox Code Playgroud)

isThisTrue在哪里通过方法设置

checkIfTrue(data){
       this.isThisTrue = data;
}
Run Code Online (Sandbox Code Playgroud)

在从可观察对象接收到事件时调用此checkfTrue()的位置。

要么

2)

<mycomp *ngIf="seeIfItHasBecomeTrue()"></mycomp>
Run Code Online (Sandbox Code Playgroud)

seeIfItHasBecomeTrue在哪里检查以查看this.isTrue是否为true。

我显然认为绑定到数据成员应该更快,但是我不确定是否总是会更快?还是有一些灰色区域?另外,如果速度更快,那么多少呢?

data-binding performance angular

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

Number.prototype.toLocaleString() 和 Intl.NumberFormat.prototype.format 有什么关系?

我们正在尝试在我们的应用程序中使用本地化支持并查看toLocaleString(). 我们还查看了Intl.NumberFormat它的格式化方法。

他们有什么关系吗?哪个更好用?

javascript localization number-formatting ecmascript-intl

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

服务文件和包含文件的业力之间有什么区别?

当我包含业力文件时,我可以指定观看,服务,包含等.其中我想了解服务和包含之间的区别.我已阅读文档,因此,如果某人能够详细说明业力在这些情况下的确切作用以及它如何影响测试,那将非常有用.

unit-testing karma-runner

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

HTML Canvas:如何为折线图下的区域着色?

我正在尝试创建山形图(折线图和下面的区域被阴影化),但是,无论我如何尝试,阴影区域都不能覆盖整个区域。因为我的图表是一条开放路径,所以填写的结果是通过图表线的区域。

在此处输入图片说明

下面是我放在W3School上以演示该问题的示例代码。

我还在同一行上看到了其他一些问题,但是也遵循这些问题也会导致同样的问题。

var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.beginPath();
ctx.moveTo(0,150);
ctx.lineTo(100,70);
ctx.lineTo(150,100);
ctx.lineTo(200,140);
ctx.lineTo(250,90);
ctx.lineTo(300,110);
ctx.fillStyle ="red";
ctx.fill();
ctx.stroke();
Run Code Online (Sandbox Code Playgroud)
<canvas id="myCanvas" width="300" height="150" style="border:1px solid #d3d3d3;">
Your browser does not support the HTML5 canvas tag.</canvas>
Run Code Online (Sandbox Code Playgroud)

javascript charts html5 canvas html5-canvas

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