2016-02-24 17 views
6

Cách tốt nhất để đảm bảo giá trị được tìm thấy (ví dụ: không phải chuỗi rỗng) sử dụng thử nghiệm e2e, ví dụ của tôi đơn giản khớp với văn bản, tôi muốn để đếm độ dài chuỗi & đảm bảo nó không phải là 0.Thước đo - cách nào tốt nhất để kiểm tra chuỗi KHÔNG được để trống trong thử nghiệm e2e

describe 'Device Details', -> 
device = ionic.Platform.device() 
details = 
'deviceManufacturer': $('#deviceManufacturer'), 
'deviceModel': $('#deviceModel') 

it 'Device Manufacturer must not be empty', -> 
    expect(details.deviceModel.getText()).toEqual '10' 

Trả lời

8

Nếu không sử dụng Jasmine- matchers.

details.deviceModel.getText().then(function(text) { 
     expect(text.length).not.toEqual(0) 
    }); 

Xem bình luận dưới đây để biết caveat (s)

+0

cảm ơn tôi đã có một số vấn đề với các hoa nhài-matchers vì vậy cách này rất hữu ích cũng – Zabs

+1

Nó có thể không phải là một vấn đề nhưng lưu ý rằng thử nghiệm này sẽ vượt qua cho everythi ng ngoại trừ nguyên thủy, chuỗi rỗng và các mảng trống. một đối tượng trong đó '.length' là' undefined' chẳng hạn sẽ vượt qua bài kiểm tra này vì nó không bằng 0. Hy vọng điều này sẽ giúp, một lần nữa, nó có thể không phải là một vấn đề cho trường hợp cụ thể của bạn. –

4

thử not.toBe ('') để kiểm tra không có sản phẩm nào

expect(details.deviceModel.getText()).not.toBe(''); 

=== trường hợp khác ====

expect('hello world').not.toBe(''); //true 
expect('').toBe(''); //true 
Các vấn đề liên quan