ci: do not run benchmark measurements in circleci (#34753)
Currently we run all benchmark perf tests in CircleCI. Since we do not collect any results, we unnecessarily waste CI/RBE resources. Instead, we should just not run benchmark perf tests in CI, but still run the functionality e2e tests which ensure that benchmarks are not broken. We can do this by splitting the perf and e2e tests into separate files/targets. PR Close #34753
This commit is contained in:

committed by
Andrew Kushnir

parent
669df70da5
commit
4d88b4bc26
@ -9,7 +9,7 @@ ts_library(
|
||||
)
|
||||
|
||||
ts_library(
|
||||
name = "perf_lib",
|
||||
name = "perf_tests_lib",
|
||||
testonly = 1,
|
||||
srcs = ["largetable_perf.spec.ts"],
|
||||
deps = [
|
||||
@ -17,3 +17,14 @@ ts_library(
|
||||
"@npm//protractor",
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
name = "e2e_tests_lib",
|
||||
testonly = 1,
|
||||
srcs = ["largetable.spec.ts"],
|
||||
tsconfig = "//modules/benchmarks:tsconfig-e2e.json",
|
||||
deps = [
|
||||
"//modules/e2e_util",
|
||||
"@npm//protractor",
|
||||
],
|
||||
)
|
||||
|
@ -1,5 +1,6 @@
|
||||
load("//tools:defaults.bzl", "ts_devserver", "ts_library")
|
||||
load("//modules/benchmarks:benchmark_test.bzl", "benchmark_test")
|
||||
load("//modules/benchmarks:e2e_test.bzl", "e2e_test")
|
||||
|
||||
package(default_visibility = ["//modules/benchmarks:__subpackages__"])
|
||||
|
||||
@ -24,5 +25,11 @@ ts_devserver(
|
||||
benchmark_test(
|
||||
name = "perf",
|
||||
server = ":devserver",
|
||||
deps = ["//modules/benchmarks/src/largetable:perf_lib"],
|
||||
deps = ["//modules/benchmarks/src/largetable:perf_tests_lib"],
|
||||
)
|
||||
|
||||
e2e_test(
|
||||
name = "e2e",
|
||||
server = ":devserver",
|
||||
deps = ["//modules/benchmarks/src/largetable:e2e_tests_lib"],
|
||||
)
|
||||
|
@ -1,5 +1,6 @@
|
||||
load("//tools:defaults.bzl", "ts_devserver", "ts_library")
|
||||
load("//modules/benchmarks:benchmark_test.bzl", "benchmark_test")
|
||||
load("//modules/benchmarks:e2e_test.bzl", "e2e_test")
|
||||
|
||||
package(default_visibility = ["//modules/benchmarks:__subpackages__"])
|
||||
|
||||
@ -27,5 +28,11 @@ ts_devserver(
|
||||
benchmark_test(
|
||||
name = "perf",
|
||||
server = ":devserver",
|
||||
deps = ["//modules/benchmarks/src/largetable:perf_lib"],
|
||||
deps = ["//modules/benchmarks/src/largetable:perf_tests_lib"],
|
||||
)
|
||||
|
||||
e2e_test(
|
||||
name = "e2e",
|
||||
server = ":devserver",
|
||||
deps = ["//modules/benchmarks/src/largetable:e2e_tests_lib"],
|
||||
)
|
||||
|
@ -1,5 +1,6 @@
|
||||
load("//tools:defaults.bzl", "ts_devserver")
|
||||
load("//modules/benchmarks:benchmark_test.bzl", "benchmark_test")
|
||||
load("//modules/benchmarks:e2e_test.bzl", "e2e_test")
|
||||
|
||||
package(default_visibility = ["//modules/benchmarks:__subpackages__"])
|
||||
|
||||
@ -13,5 +14,11 @@ ts_devserver(
|
||||
benchmark_test(
|
||||
name = "perf",
|
||||
server = ":devserver",
|
||||
deps = ["//modules/benchmarks/src/largetable:perf_lib"],
|
||||
deps = ["//modules/benchmarks/src/largetable:perf_tests_lib"],
|
||||
)
|
||||
|
||||
e2e_test(
|
||||
name = "e2e",
|
||||
server = ":devserver",
|
||||
deps = ["//modules/benchmarks/src/largetable:e2e_tests_lib"],
|
||||
)
|
||||
|
29
modules/benchmarks/src/largetable/largetable.spec.ts
Normal file
29
modules/benchmarks/src/largetable/largetable.spec.ts
Normal file
@ -0,0 +1,29 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright Google Inc. All Rights Reserved.
|
||||
*
|
||||
* Use of this source code is governed by an MIT-style license that can be
|
||||
* found in the LICENSE file at https://angular.io/license
|
||||
*/
|
||||
|
||||
import {$} from 'protractor';
|
||||
|
||||
import {openBrowser, verifyNoBrowserErrors} from '../../../e2e_util/e2e_util';
|
||||
|
||||
describe('largetable benchmark', () => {
|
||||
afterEach(verifyNoBrowserErrors);
|
||||
|
||||
it(`should render the table`, () => {
|
||||
openBrowser({
|
||||
url: '',
|
||||
ignoreBrowserSynchronization: true,
|
||||
params: [{name: 'cols', value: 5}, {name: 'rows', value: 5}],
|
||||
});
|
||||
$('#createDom').click();
|
||||
expect($('#root').getText()).toContain('0/0');
|
||||
$('#createDom').click();
|
||||
expect($('#root').getText()).toContain('A/A');
|
||||
$('#destroyDom').click();
|
||||
expect($('#root').getText() as any).toEqual('');
|
||||
});
|
||||
});
|
@ -7,8 +7,6 @@
|
||||
*/
|
||||
|
||||
import {$} from 'protractor';
|
||||
|
||||
import {openBrowser} from '../../../e2e_util/e2e_util';
|
||||
import {runBenchmark, verifyNoBrowserErrors} from '../../../e2e_util/perf_util';
|
||||
|
||||
interface Worker {
|
||||
@ -48,20 +46,6 @@ describe('largetable benchmark perf', () => {
|
||||
|
||||
afterEach(verifyNoBrowserErrors);
|
||||
|
||||
it(`should render the table for ${testPackageName}`, () => {
|
||||
openBrowser({
|
||||
url: '',
|
||||
ignoreBrowserSynchronization: true,
|
||||
params: [{name: 'cols', value: 5}, {name: 'rows', value: 5}],
|
||||
});
|
||||
$('#createDom').click();
|
||||
expect($('#root').getText()).toContain('0/0');
|
||||
$('#createDom').click();
|
||||
expect($('#root').getText()).toContain('A/A');
|
||||
$('#destroyDom').click();
|
||||
expect($('#root').getText() as any).toEqual('');
|
||||
});
|
||||
|
||||
[CreateOnlyWorker, CreateAndDestroyWorker, UpdateWorker].forEach((worker) => {
|
||||
describe(worker.id, () => {
|
||||
it(`should run benchmark for ${testPackageName}`, done => {
|
||||
|
@ -1,5 +1,6 @@
|
||||
load("//tools:defaults.bzl", "ng_module", "ng_rollup_bundle", "ts_devserver")
|
||||
load("//modules/benchmarks:benchmark_test.bzl", "benchmark_test")
|
||||
load("//modules/benchmarks:e2e_test.bzl", "e2e_test")
|
||||
|
||||
package(default_visibility = ["//modules/benchmarks:__subpackages__"])
|
||||
|
||||
@ -40,5 +41,11 @@ ts_devserver(
|
||||
benchmark_test(
|
||||
name = "perf",
|
||||
server = ":prodserver",
|
||||
deps = ["//modules/benchmarks/src/largetable:perf_lib"],
|
||||
deps = ["//modules/benchmarks/src/largetable:perf_tests_lib"],
|
||||
)
|
||||
|
||||
e2e_test(
|
||||
name = "e2e",
|
||||
server = ":prodserver",
|
||||
deps = ["//modules/benchmarks/src/largetable:e2e_tests_lib"],
|
||||
)
|
||||
|
@ -1,5 +1,6 @@
|
||||
load("//tools:defaults.bzl", "ng_module", "ts_devserver")
|
||||
load("//modules/benchmarks:benchmark_test.bzl", "benchmark_test")
|
||||
load("//modules/benchmarks:e2e_test.bzl", "e2e_test")
|
||||
|
||||
package(default_visibility = ["//modules/benchmarks:__subpackages__"])
|
||||
|
||||
@ -36,5 +37,11 @@ ts_devserver(
|
||||
benchmark_test(
|
||||
name = "perf",
|
||||
server = ":devserver",
|
||||
deps = ["//modules/benchmarks/src/largetable:perf_lib"],
|
||||
deps = ["//modules/benchmarks/src/largetable:perf_tests_lib"],
|
||||
)
|
||||
|
||||
e2e_test(
|
||||
name = "e2e",
|
||||
server = ":devserver",
|
||||
deps = ["//modules/benchmarks/src/largetable:e2e_tests_lib"],
|
||||
)
|
||||
|
@ -2,6 +2,7 @@ package(default_visibility = ["//visibility:public"])
|
||||
|
||||
load("//tools:defaults.bzl", "ng_module", "ng_rollup_bundle", "ts_devserver")
|
||||
load("//modules/benchmarks:benchmark_test.bzl", "benchmark_test")
|
||||
load("//modules/benchmarks:e2e_test.bzl", "e2e_test")
|
||||
|
||||
ng_module(
|
||||
name = "largetable_lib",
|
||||
@ -43,5 +44,12 @@ benchmark_test(
|
||||
name = "perf",
|
||||
server = ":devserver",
|
||||
tags = ["ivy-only"],
|
||||
deps = ["//modules/benchmarks/src/largetable:perf_lib"],
|
||||
deps = ["//modules/benchmarks/src/largetable:perf_tests_lib"],
|
||||
)
|
||||
|
||||
e2e_test(
|
||||
name = "e2e",
|
||||
server = ":devserver",
|
||||
tags = ["ivy-only"],
|
||||
deps = ["//modules/benchmarks/src/largetable:e2e_tests_lib"],
|
||||
)
|
||||
|
Reference in New Issue
Block a user