Angular: 如何测试RadioButton?
Angular: How to test RadioButton?
Angular Material 提供 MatButtonHarness 来测试常规 HTML 按钮。有了它你可以 'getText', 'click'.
有没有类似测试RadioButtons的东西?我希望 MatRadioHarness 存在,但它不存在。
如果没有,推荐的方法是什么?
谢谢!
我找不到任何文档,但查看“MatButtonHarness”的源代码在哪里 (~myproject\node_modules@angular\material\button) 我能够用线束识别位置 class es 用于单选按钮 (c:\Project\AngularLearning\Frontend\node_modules@angular\material\radio).
在 'testing' 子文件夹中,我能够找到实际的 classes 来使用单选按钮线束:MatRadioGroupHarness 和 MatRadioButtonHarness。显而易见的答案,但令人困惑的是,单选按钮的 class 中没有 'button'。
在我找到特定的 classes 之后,我用谷歌搜索并确定了工作示例:https://stackblitz.com/angular/rllllvapblod?file=src%2Fapp%2Fradio-harness-example.spec.ts
让它工作的一个重要部分是将 MatRadioModule 添加到我的测试初始化的导入部分:
describe('MapsComponent', () => {
let component: MapsComponent;
let fixture: ComponentFixture<MapsComponent>;
let componentService: HexesService;
beforeEach(
waitForAsync(() => {
TestBed.configureTestingModule({
imports: [MatRadioModule],
declarations: [MapsComponent],
}).compileComponents();
...
希望这对其他人也有帮助!
Angular Material 提供 MatButtonHarness 来测试常规 HTML 按钮。有了它你可以 'getText', 'click'.
有没有类似测试RadioButtons的东西?我希望 MatRadioHarness 存在,但它不存在。
如果没有,推荐的方法是什么?
谢谢!
我找不到任何文档,但查看“MatButtonHarness”的源代码在哪里 (~myproject\node_modules@angular\material\button) 我能够用线束识别位置 class es 用于单选按钮 (c:\Project\AngularLearning\Frontend\node_modules@angular\material\radio).
在 'testing' 子文件夹中,我能够找到实际的 classes 来使用单选按钮线束:MatRadioGroupHarness 和 MatRadioButtonHarness。显而易见的答案,但令人困惑的是,单选按钮的 class 中没有 'button'。
在我找到特定的 classes 之后,我用谷歌搜索并确定了工作示例:https://stackblitz.com/angular/rllllvapblod?file=src%2Fapp%2Fradio-harness-example.spec.ts
让它工作的一个重要部分是将 MatRadioModule 添加到我的测试初始化的导入部分:
describe('MapsComponent', () => {
let component: MapsComponent;
let fixture: ComponentFixture<MapsComponent>;
let componentService: HexesService;
beforeEach(
waitForAsync(() => {
TestBed.configureTestingModule({
imports: [MatRadioModule],
declarations: [MapsComponent],
}).compileComponents();
...
希望这对其他人也有帮助!