首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何测试你做的项目的访问性

站在 Web 开发的角度,一提到网站的访问性,可能大部分人最想知道的就是:如何评判一个网站的访问性的好坏?是否有自动化的检测工具可用,可以很直接地指出问题所在和改进策略?...dequelabs/axe-core) 是一个用于测试 Web UI 访问性的引擎。...自动化工具只能检测访问性问题的子集,因此手工测试必不可少。 二、手动测试的方法和工具 关于手动测试,重点和大家分享三点:键盘的访问性、屏幕阅读器、缩放功能。...、良好的页面结构 页面支持缩放 总结 本文主要讲了两部分,第一部分是访问性的自动化测试工具,重点介绍了 Chrome 开发者工具的 Audits 面板;第二部分是手动测试网站的访问性,包括键盘访问性...这些需要通过 HTML 语义化和 ARIA 技术来解决,如何修复这些问题,咱们下回见~!

1.8K10

如何模拟一个XMLHttpRequest请求用于单元测试——nise源码阅读与分析

概述 在我们进行单元测试的过程中,如果我们需要对一些HTTP接口进行相关的业务测试,那么我们就需要来模拟HTTP请求的发送与响应,否则我们就无法完成测试的闭环。...目前,有许许多多的测试框架都提供了模拟HTTP请求相关的一些流程功能,我们在这边文章中将会讲到的,就是我们在上一篇关于单元测试的博客提高代码质量——使用Jest和Sinon给已有的代码添加单元测试中提到的...本文的目标是让读者能够通过这篇文章,知道一个成熟的测试框架是如何来模拟一个HTTP的实现,并且与业务代码进行结合,辅助进行测试。...nise是如何与业务代码结合,辅助测试?...我们再通过nise记录的数据,组合其他的单元测试框架来对业务代码进行测试。 nise的源码只有600余行,而且非常简单易懂。

2.4K10
您找到你想要的搜索结果了吗?
是的
没有找到

使用流动控制器(Flow Controller )实现 MVVM 协议模型

最近几周,我想了很多有关如何提高我对 MVVM 架构的理解,并且创建一个维护的开发框架。所以我看了 Krzysztof Zabłocki 关于软件架构的视频, 这个视频太赞了。...好,开始测试 单元测试和用户界面测试,这个就不用解释了吧。但我关注的是有关架构的分层,它为了(更好的部署)自动测试,让 QA 分析员想出新的测试机制来保证应用程序的(高)质量。...在本例中,只有数据和子单元的变化,可以作为一个参数传递,并为所有列表创建一份重用的代码。 这里有趣的一点是实现了两种响应协议:一个用于网格和一个列表。但两个的实现是相同的。...要做的事: 测试单元测试和模拟界面测试(我开始测试的结果是 78% 的覆盖率) 扩展模型 :其他对象(我需要找到其他的动物) 接口和基础设施:创建其他类型的单元,使用相同的 UIViewController...我的下一篇文章将是如何建立有效的测试,简单易维护。

94540

解决UITableView中Cell重用机制导致内容出错的方法总结

UITableView中的cell可以有很多,一般会通过重用cell来达到节省内存的目 的:通过为每个cell指定一个重用标识符(reuseIdentifier),即指定了单元格的种类,当cell滚出屏幕时...,会将滚出屏幕的单元格放入 重用的queue中,当某个未在屏幕上的单元格要显示的时候,就从这个queue中取出单元格进行重用。...dequeueReusableCellWithIdentifier 这个方法,方法的意思就是“出列重用的cell”,因而只要将它换为cellForRowAtIndexPath(只从要更新的cell的那一行取出... dequeueReusableCellWithIdentifier:CellIdentifier]; //出列重用的cell if (cell == nil) { cell = [[UITableViewCell... dequeueReusableCellWithIdentifier:CellIdentifier]; //出列重用的cell if (cell == nil) { cell = [[UITableViewCell

2.3K50

C++ Qt开发:StandardItemModel数据模型组件

首先笔者先来演示一下如何tableView组件与QStandardItemModel组件进行绑定操作,其实绑定很简单只需要调用ui->tableView->setModel即可将tableView组件与...用于处理表格中的选择操作,并将它们关联到TableView组件上。...在窗口初始化时,除了打开文件的操作外,禁用了其他所有Action选项。创建状态栏组件,包括显示当前文件、当前单元格位置和单元格内容的QLabel组件。...:"+aItem->text()); // 显示item的文字内容 } } 读者自行运行这段程序,当运行后首先会初始化表格的长度及宽度,且页面中禁用了其他按钮,只能选择打开文件选项,如下图所示...这个函数主要用于模拟在 TableView 中追加一行数据,其中包括普通文本和可选框数据。

21110

iOS面试题梳理(三)

对于单元重用的理解 当屏幕上滑出屏幕时,系统会把这个单元格添加到重用队列中,等待被重用,当有新单元从屏幕外滑入屏幕内时,从重用队列中找看有没有可以重用单元格,若有,就直接用,没有就重新创建一个。...解决cell重用的问题 UITableView通过重用单元格来达到节省内存的目的,通过为每个单元格指定一个重用标示(reuseidentifier),即指定了单元格的种类,以及当单元格滚出屏幕时,允许恢复单元格以便复用...如一个TableView中有10个单元格,但屏幕最多显示4个,实际上iPhone只为其分配4个单元格的内存,没有分配10个,当滚动单元格时,屏幕内显示的单元格重复使用这4个内存。...:defineString] 修改为:UITableViewCell *cell = [tableview cellForRowAtIndexPath:indexPath]; 这样就解决掉cell重用机制导致的问题...如何使用两个TableView产生联动:将两个tableView的滚动事件禁止掉,最外层scrollView滚动时将两个TableView跟着滚动,并且更改contentOffset,这样产生效果滚动的两个

1.4K71

【IOS开发基础系列】UICollectionView专题

标准的UICollectionView包含三个部分,它们都是UIView的子类:     • Cells 用于展示内容的主体,对于不同的cell可以指定不同尺寸和不同的内容,这个稍后再说     • Supplementary...1.3 关于重用         为了得到高效的View,对于cell的重用是必须的,避免了不断生成和销毁对象的操作,这与在UITableView中的情况是一致的。...在iOS5中,Apple对UITableView的重用做了简化,以往要写类似这样的代码: UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier...:@"MY_CELL_ID"]; //如果没有重用的cell,那么生成一个  if (!...        UICollectionViewCell其实只实例化了能应付一屏显示范围的对象实例,而在cellForItemAtIndexPath方法中重复更新此实例的业务数据来达到显示不同Cell的目的

33630

UITableView性能提升和优化(第

再次运行测试重用cell之后,你可以再一次测试滚动性能。从表格3-3可以看出,在你正确重用cell之后,性能提升了一倍。 ?...表格 3-3 重用cell之后测试的结果 结果显示你的做法是正确的;但是,现在的性能依然不够好。...所以下一部分将要学习如何重用p_w_picpaths,而不是每次调用的时候都创建一个新的p_w_picpath。 这就是你为什么要重用cell的原因。...这就是为什么tableview总是queue 一个cell进行重用,无论这个cell是否在屏幕之外。...表格 3-4 在重用图片之后的测试结果 好极了!fps现在几乎是60了,预加载的时间也降低了。如果你的apps能够达到这个水平,你不必再担心滚动时的性能了;它非常的流畅。

64320

《PytorchConference2023 翻译系列》2-PyTorch开发者基础设施

主要工具 HUD: 开发者主要交互工具 不稳定测试检测与禁用: 自动处理不稳定测试 重用工作流组件:简化CI/CD流程 3....因此,我们希望能够找到如何在我们的工作负载中使用它,并提高开发人员的生产力。我们认为,实际上这些用例中的一些甚至可以适用于PyTorch以外的领域。...归根结底,我们还希望以重用的组件保持高速度。所以,如果你有一个可以在许多不同地方重用的组件,可能是通用的,我们也希望能够做到这一点。最重要的是,所有这些都有助于提高开发人员的生产力。...我们有重用的工作流组件。我们明白编写机器学习框架的人不一定是写最好持续集成(CI)的人。...因此,我们希望能够确保我们拥有一组重用的工作流组件,这组件可以做很多事情,比如设置GPU、设置CPU,设置Python环境,并允许他们以最简单的方式为他们的CI编写脚本。

13410

阐明 Python 编程中的 if __name__ == “__main__“: 的作用和机理

但是,有时我们也会将一个模块导入到其他脚本中,以便在其他地方重用其中的功能。 那么我们如何区分一个模块是直接被执行,还是被导入到其他模块中呢?...这个变量通常用于编写重用的模块,因为它允许检查模块是被导入的还是被直接运行。总之,__name__ 变量帮助我们判断代码是被直接运行还是被导入到其他程序中,从而更高效地重用代码。...if __name__ == "__main__": 块内部可以包含用于单元测试的代码。你可以在这里编写测试用例,验证模块的功能是否正常。...总之,if __name__ == "__main__": 是一个重要的 Python 构造,它让我们的代码更加灵活、重用。...良好的文档和注释有助于项目的可维护性和可读性。

10900

【iOS7一些总结】9、与列表显示(在):列表显示UITableView

显演示样例如以下图: 表视图的协议方法——这是很重要的部分,由于我们创建一个表视图,目的就是让视图能够显示数据,否则一个空空的表视图与废物无二。...托付方法一般用于实现个性化处理表视图的基本样式(如单元格的高度等)以及捕捉单元格选中的响应。数据源方法用于完毕表中的数据。如指定单元格数。以及创建每个单元格。 要实现代理和数据源方法。...:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section; 这两个方法分别用于生成每个cell。...,假设没有闲置的单元格。...參数indexPath表示眼下正在创建的单元格位于整个表视图的第几行。 编译。执行,显示结果: 假设希望实现对选中某个单元格的响应,仅仅须要实现以下代理方法就可以。

1.9K40

Travis CI 教程:入门

好吧,.travis.yml 文件使用 YAML 告诉 Travis 如何设置构建。由于 Travis 使用多种不同的语言,因此如果没有关于它是什么类型的项目的信息,它就不知道如何构建您的特定项目。...对于要传递任务状态更改的单元,它将需要对任务的引用和委托以将更改传达给。在插座下面添加这两个项目的变量: var currentTask: Task?...由于单元格被重用,因此在重新使用单元格之前清除这些变量的值,方法是重写 prepareForReuse() 并将每个值重置为 nil: public override func prepareForReuse...如果您考虑 TaskTableViewCell 通常如何创建 - 通过从故事板加载的视图控制器管理的单元重用队列 - 这种崩溃是有意义的。单元格没有从故事板加载,所以 IBOutlets 不要搞定。...幸运的是,这是不是 太 很难解决 - 抓住从实例到单元格的引用 MasterViewController 从故事板实例化,并使用它的 tableView(_:cellForRowAtIndexPath:

4.9K20

手写一句话识别demo笔记

简介 假如我们需要在自己的产品中加入语音识别功能,那么调用腾讯云语音识别接口直接得到返回将会是在产品开发的过程中,减少极大的前期研发投入,直接调用接口即可,那如何把一些语音识别的功能集成到我们的产品中呢...如果开发的某款应用已经有了这个文件关于网络设定的这两个文件,忽略,如果没有的话,就只需将该例程中的Reachability.m 和Reachability.h拷贝到你的工程网文件中。...,首先去缓存池中找有没有重用的cell,如果有,则拿过来重用;如果没有,那么根据之前注册的UITableViewCell这个类,来自动生成一个cell,并且给它绑定上重用identifier。...密钥安全设置 建议建立一个 .h文件专门用于存放APPID和密钥信息的。...那我们看下这个核实身份信息的功能是如何实现的。

79920

iOS两年前的面试题总结,现在的你掌握了嘛?

修改不可修改的集合类,就是动态添加修改和不可动态添加修改。...对于单元重用的理解 当屏幕上滑出屏幕时,系统会把这个单元格添加到重用队列中,等待被重用,当有新单元从屏幕外滑入屏幕内时,从重用队列中找看有没有可以重用单元格,若有,就直接用,没有就重新创建一个。...解决cell重用的问题 UITableView通过重用单元格来达到节省内存的目的,通过为每个单元格指定一个重用标示(reuseidentifier),即指定了单元格的种类,以及当单元格滚出屏幕时,允许恢复单元格以便复用...如一个TableView中有10个单元格,但屏幕最多显示4个,实际上iPhone只为其分配4个单元格的内存,没有分配10个,当滚动单元格时,屏幕内显示的单元格重复使用这4个内存。...如何使用两个TableView产生联动:将两个tableView的滚动事件禁止掉,最外层scrollView滚动时将两个TableView跟着滚动,并且更改contentOffset,这样产生效果滚动的两个

1.1K20

单元测试:构建可靠软件的关键步骤

单元测试作为软件开发过程中的关键步骤之一,能够帮助开发者发现和解决代码中的错误,确保代码的正确性。本文将详细介绍单元测试的概念、重要性以及如何有效地进行单元测试,以帮助开发者构建更加可靠的软件。...一、什么是单元测试单元测试是软件开发中的一种测试方法,用于验证代码中的最小可测试单元(通常是函数或方法)的正确性。它的目的是在开发过程中尽早地发现代码中的缺陷和错误,以便及时进行修复。...单元测试可以帮助开发者迅速定位和修复问题,从而提高代码质量。 支持重构和代码重用单元测试为重构代码和实现代码重用提供了保障。...三、如何进行有效的单元测试 选择合适的单元测试框架: 根据开发语言和项目需求,选择适合的单元测试框架。...它能够提高代码质量、支持重构和代码重用、加速开发流程,并促进团队协作。为了进行有效的单元测试,开发者应选择合适的单元测试框架,编写独立重复的测试用例,并覆盖关键路径和边界条件。

12520
领券