如何使用Angular 8单元测试检查给定路径中是 否存在图像?

问题描述 投票:0回答:2

我在assets/logo.png中有一张图片,我想在.spec.ts内部检查此图片是否存在,以及是否不抛出错误(正确与否)。我如何实现这样的东西?

javascript angular typescript unit-testing karma-jasmine
2个回答
1
投票

您可以尝试以下代码:

    it('should set image logo path as expected', () => {
        const ele = fixture.debugElement.nativeElement.querySelectorAll('img');
        expect(ele[0]['src']).toContain('logo.png'); // if you dont have `id` in `img` , you need to provide index as `ele[index]`
        // OR use 
       const ele1 = fixture.debugElement.nativeElement.querySelector("#img-id");
       expect(ele1['src']).toContain('logo.png');
    });

它检查src属性中是否存在下面的图像。您可以使用.toEqual('assets/logo.png')

更具体

0
投票

为图像创建一个html,将图像路径分配给源,并检查图像标签是否具有所分配图像的高度和宽度

it('should set image logo path as expected', () => {
  let ele = document.createElement("img"); 
  ele.id = 'eee'; 
  ele.src = this.source; 
  setTimeout(() => { 
     expect(ele.height).toBeGreaterThan(0);
     expect(ele.width).toBeGreaterThan(0);
   }, 5000);
 });

如果图像路径不正确,则ele的宽度和高度将为0。

© www.soinside.com 2019 - 2024. All rights reserved.