无法确定我的测试用例是通过还是失败

2024-02-18

我需要在 JavaScript 中测试“事件”,例如按钮单击、使用“Mocha”单击链接等。

我有 3 个文件 1) Login.html,2) Application.js,3) test.js。

1)Application.js文件包含以下代码:

function doclick() {

 document.getElementById("myBtn").innerHTML = alert("Going to test Events in JavaScript");
} 

2)test.js包含以下代码:

var expect = chai.expect;

describe('Testing', function() {
  it('Testing the Events in JavaScript', function() {

    var v1 = doclick();
    expect(v1).to.equal("Going to test Events in JavaScript");

  });

3)login.html包含以下代码:

document.getElementById("myBtn").addEventListener("click", doclick);

我需要测试当单击按钮时,它应该显示带有此消息的警报“Going to test Events in JavaScript”,实际上它确实如此。但浏览器不显示我的测试用例是通过还是失败。

我认为我在“test.js”文件中犯了错误,我做错了什么?


两件事情:

  1. doClick()

显示的内容是innerHTML 值在实际按钮上,而不是单击按钮时运行的内容。您无需执行任何操作或设置任何其他内容即可获得该功能;这就是您的 addEventListener 调用所做的事情。如果你想显示一个警告,所有 doclick 需要做的是:

function doclick() {
    alert("Going to test Events in JavaScript");
}
  1. test.js

现在,您似乎希望 doclick 做的不仅仅是发送警报,还返回一个要在 test.js 中使用的值。这需要是那个字符串吗?鉴于 doclick 只做一件事,不是真的。如果您只想测试它是否运行,请让 doclick 返回 true 并将 v1 初始设置为 false。然后将 v1 设置为 true 值而不是那个长字符串。

function doclick() {
    alert("Going to test Events in JavaScript");
    return true; //I ran, so return true.
}

var expect = chai.expect;

describe('Testing', function() {
  it('Testing the Events in JavaScript', function() {

    var v1 = false;
    v1 = doclick();
    expect(v1).to.equal(true); //or whatever the syntax here is, I haven't used expect before

  });
});

我假设您的其余语法是正确的 - “it()”是一个有效的函数,并且您的 test.js 文件最终运行没有错误。如果对 Mocha 有更多了解的人想要回答,我可能会接受他们的知识,但鉴于到目前为止没有其他人回答过,这至少是解决一些 JS 代码相关问题的起点!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法确定我的测试用例是通过还是失败 的相关文章

随机推荐

  • 组合物品

    假设我有以下因素列表 factor 1 c A1 A2 A3 factor 2 c B1 B2 factor 3 c C1 C2 C3 C4 factor 4 c D1 D2 D3 我制作了以下数据框 其中包含这些因素的所有 3 2 4 3
  • mongodb聚合:如何返回带有最小值/最大值而不是值的对象

    假设我的文档有一个date字段 我想获取聚合中第一个和最后一个出现的文档 使用 group and min or max 很容易获得日期本身 例如 db mycollection aggregate group id 1 for the e
  • Android 应用程序中的 Facebook 和 Twitter 实时推送

    我想在我的 Android 应用程序中显示 Facebook 和 Twitter 的实时直播 就像这个页面一样 espn com http espn go com nba 怎么做 我应该在android中使用html css吗 Thanks
  • Nougat 上未调用 TelephonyManager 的 PhoneStateListener

    我制作了一个示例应用程序和 PhoneStateListener TelephonyManager telephony TelephonyManager getSystemService Context TELEPHONY SERVICE
  • ASP.Net Core 将数据从 SQL 数据库复制到 SQLite

    我正在将一个应用程序转换为 ASP Net Core 该应用程序要求用户能够在某些情况下离线工作 以前 我们通过将数据复制到 SQLite 数据库并将该数据下载到客户端来处理此问题 我在 ASP NET Core Entity Framew
  • php PDO使用占位符批量插入多行

    我希望使用 PHP PDO 进行多次插入 我找到的最接近的答案是这个 如何将数组插入到单个 mysql 准备好的语句中 https stackoverflow com questions 4629022 how to insert an a
  • 信号量 P 和 V 操作是原子操作吗?

    可以在信号量上执行的 P 和 V 操作是否保证原子操作 信号量可以防止两个进程进入 P 吗 假设我们有一个二进制信号量 s 其值为 1 并且两个进程同时尝试在 s 上执行 P 这些操作中只有一个能够在 s 上的下一个 V 操作之前完成 尝试
  • “故事板.故事板”无法打开

    无法打开文档 Storyboard storyboard 不能 阅读档案 请使用较新版本的 Xcode 考虑更改文档的 开发目标是保持兼容性 我们不能通过对设置进行一些更改来在 xcode 4 2 上运行它吗 打开storyboard文件作
  • 需要创建带有水印图像的光标[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我需要创建带有透明 水印 图像的光标
  • 如果 UILabel 的内容不适合,则更改文本末尾的默认“...”

    我的 iPhone 项目中有一个 UILabel 它具有固定的宽度和高度 但它的内容可能会根据用户正在查看的内容而变化 有时 文本对于 UILabel 来说太大 此时字符串 被添加到行尾 我想知道是否可以将此字符串更改为其他内容 例如 mo
  • 如何输入非富文本?

    是否可以进入non 富文本进入文本编辑器 撇号富文本编辑器似乎添加 p 标签围绕其中的所有内容 我想像这样格式化 widget html p h2 apos singleton data widget section heading apo
  • JDBC:Oracle 应用服务器和“网络适配器无法建立连接”错误

    我从 Oracle 应用服务器 10g 中部署的 Web 应用程序收到错误 网络适配器无法建立连接 数据库是本地的 因此不应该有任何连接问题 第一个测试 我可以从 SQL plus 连接到数据库 运行查询等 没有任何问题 第二次测试 我可以
  • 如何将 sql 查询的结果映射到对象上?

    目前 我正在使用这样的东西 try dr SQL Execute sql if dr null while dr Read CustomObject c new CustomObject c Key dr 0 ToString c Valu
  • Javascript DOM“this”对象不正确

    有谁可以解释以下错误消息吗 我试图获取有关多个 div 的简单信息 而其中一个 div 抛出此错误 忽略具有 LenientThis 的属性的 get 或 set 因为 this 对象不正确 脚本 js 3288 resource gre
  • 如何从不同版本的python导入*.pyc文件?

    我使用 python 2 5 并从 C util Python25 Lib site packages 目录导入一个名为 irit py 的文件 该文件导入位于同一目录中的文件 irit pyc 它运行良好并且做了我想要的事情 然后 我用
  • Spark.table 与 sql() AccessControlException

    尝试跑步 spark table db table groupBy date agg sum total returns org apache spark sql AnalysisException org apache hadoop hi
  • 仅适用于正整数的正则表达式是什么? (不允许为零)

    仅适用于正整数的正则表达式是什么 不允许为零 我只能得到数字的正则表达式 即 d 我一直试图在网上寻找一个 但已经过去一个小时了 所以我决定将其发布在 Stack Overflow 上 matches 1 2 444 9000 012 不匹
  • 批处理文件中的 at 符号 (@) 是什么?它有什么作用?

    熟悉 windows dos 批处理脚本的人会认出这一行 echo off 在很多很多天里 我对这样的感觉感到高兴 is how echo off应该写在批次的顶部 仅此而已 然而 最近我遇到了 http getcomposer org d
  • 使用 C 计算 ASCII 文件中的行数

    我想计算 ASCII 文本文件中的行数 我认为最好的方法是计算文件中的换行符 for int c fgetc fp c EOF c fgetc fp Count word line endings if c n lines 但是 我不确定这
  • 无法确定我的测试用例是通过还是失败

    我需要在 JavaScript 中测试 事件 例如按钮单击 使用 Mocha 单击链接等 我有 3 个文件 1 Login html 2 Application js 3 test js 1 Application js文件包含以下代码 f