8
angular2
を使用してログインページを作成しました。それはuserName
とpassword
という2つの入力フィールドを持っています。そのログインにはボタンがあります。 loginComponent
のテストケースを書くときは、button
を認識するためにpredicate
を使用しなければなりませんでした。ここに私のテストケースがあります。angular2の述語の使い方
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { By } from '@angular/platform-browser';
import { DebugElement } from '@angular/core';
import { LoginComponent } from './login.component';
export class LoginComponentTest {
constructor(public loginComponent: LoginComponent){
this.loginComponent.logIn('Chathura', '1234');
}
}
describe('LoginComponent',() => {
beforeEach(() => {
TestBed.configureTestingModule({
declarations: [
LoginComponent
],
})
});
const fixture = TestBed.createComponent(LoginComponent);
const button = fixture.query(predicate: Predicate<DebugElement>, scope?: Function) : DebugElement
});
私は入力値を入力してログインボタンをクリックして次にテストするつもりです。
述語を正しく使用するための正しいチュートリアルが見つかりませんでした。
私は 'By.css( '。the-button')'を使って知っていますが、ボタンのセットがあれば、それぞれのボタンを認識するのが難しいという問題があります。それはどうすればできますか? 'id'を呼び出す関数があれば良いでしょう。 – hennamusick
正しいセレクターを使用する必要があります。あなたはcssを使って特定のボタンを選択する方法を知っていますか?これは基本的なCSSのものです。 Angularとは関係ありません。 'css'メソッドは任意のcssセレクタをとることができます。どのようにするかわからない場合は、簡単にして、ボタンにIDを与えてください。それでは 'css( '#button-id')' –
ありがとうございます。それは働いている。 – hennamusick