WEB全面测试方法汇总

WEB功能测试方法

功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。常用的测试方法如下:

  1. 页面链接检查:每一个链接是否都有对应的页面,并且页面之间切换正确。

  2. 相关性检查:删除/增加一项会不会对其他项产生影响,如果产生影响,这些影响是否都正确。

  3. 检查按钮的功能是否正确:如update, cancel, delete, save等功能是否正确。

  4. 字符串长度检查: 输入超出需求所说明的字符串长度的内容, 看系统是否检查字符串长度,会不会出错.

  5. 字符类型检查: 在应该输入指定类型的内容的地方输入其他类型的内容(如在应该输入整型的地方输入其他字符类型),看系统是否检查字符类型,会否报错.

  6. 标点符号检查: 输入内容包括各种标点符号,特别是空格,各种引号,回车键.看系统处理是否正确.

  7. 中文字符处理: 在可以输入中文的系统输入中文,看会否出现乱码或出错.

  8. 检查带出信息的完整性: 在查看信息和update信息时,查看所填写的信息是不是全部带出.,带出信息和添加的是否一致

  9. 信息重复: 在一些需要命名,且名字应该唯一的信息输入重复的名字或ID,看系统有没有处理,会否报错,重名包括是否区分大小写,以及在输入内容的前后输入空格,系统是否作出正确处理.

  10. 检查删除功能:在一些可以一次删除多个信息的地方,不选择任何信息,按”delete”,看系统如何处理,会否出错;然后选择一个和多个信息,进行删除,看是否正确处理.

  11. 检查添加和修改是否一致: 检查添加和修改信息的要求是否一致,例如添加要求必填的项,修改也应该必填;添加规定为整型的项,修改也必须为整型.

  12. 检查修改重名:修改时把不能重名的项改为已存在的内容,看会否处理,报错.同时,也要注意,会不会报和自己重名的错.

  13. 重复提交表单:一条已经成功提交的纪录,back后再提交,看看系统是否做了处理。

  14. 检查多次使用back键的情况: 在有back的地方,back,回到原来页面,再back,重复多次,看会否出错.

  15. search检查: 在有search功能的地方输入系统存在和不存在的内容,看search结果是否正确.如果可以输入多个search条件,可以同时添加合理和不合理的条件,看系统处理是否正确.

  16. 输入信息位置: 注意在光标停留的地方输入信息时,光标和所输入的信息会否跳到别的地方.

  17. 上传下载文件检查:上传下载文件的功能是否实现,上传文件是否能打开。对上传文件的格式有何规定,系统是否有解释信息,并检查系统是否能够做到。

  18. 必填项检查:应该填写的项没有填写时系统是否都做了处理,对必填项是否有提示信息,如在必填项前加*

  19. 快捷键检查:是否支持常用快捷键,如Ctrl+C Ctrl+V Backspace等,对一些不允许输入信息的字段,如选人,选日期对快捷方式是否也做了限制。

  20. 回车键检查: 在输入结束后直接按回车键,看系统处理如何,会否报错.

​现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:485187702【暗号:csdn11】

图形测试

1、在 Web 应用系统中,适当的图片和动画既能起到广告宣传的作用,又能起到美化页面的功能。一个 Web 应用系统的图形可以包括图片、动画、边框、颜色、字体、背景、按钮等。图形测试的内容有:

   (1)要确保图形有明确的用途,图片或动画不要胡乱地堆在一起,以免浪费传输时间。 Web 应用系统的图片尺寸要尽量地小,并且要能清楚地说明某件事情,一般都链接到某个具体的页面。

   (2)验证所有页面字体的风格是否一致。

   (3) 背景颜色应该与字体颜色和前景颜色相搭配。

   (4)图片的大小和质量也是一个很重要的因素,一般采用 JPG 或 GIF 压缩。

2、内容测试

信息的正确性是指信息是可靠的还是误传的。例如,在商品价格列表中,错误的价格可能引起财政问题甚至导致法律纠纷;信息的准确性是指是否有语法或拼写错误。

这种测试通常使用一些文字处理软件来进行,例如使用 Microsoft Word 的 " 拼音与语法检查 " 功能;

信息的相关性是指是否在当前页面可以找到与当前浏览信息相关的信息列表或入口,也就是一般 Web 站点中的所谓 " 相关文章列表 " 。

3、整体界面测试

整体界面是指整个 Web 应用系统的页面结构设计,是给用户的一个整体感。例如:当用户浏览 Web 应用系统时是否感到舒适,是否凭直觉就知道要找的信息在什么地方?

整个 Web 应用系统的设计风格是否一致?对整体界面的测试过程,其实是一个对最终用户进行调查的过程。一般 Web 应用系统采取在主页上做一个调查问卷的形式,来得到最终用户的反馈信息。

对所有的可用性测试来说,都需要有外部人员(与 Web 应用系统开发没有联系或联系很少的人员)的参与,最好是最终用户的参与。

客户端兼容性测试

4.1.平台测试

  市场上有很多不同的操作系统类型,最常见的有 Windows 、 Unix 、 Macintosh 、 Linux 等。 Web 应用系统的最终用户究竟使用哪一种操作系统,取决于用户系统的配置。这样,

就可能会发生兼容性问题,同一个应用可能在某些操作系统下能正常运行,但在另外的操作系统下可能会运行失败。因此,在 Web 系统发布之前,需要在各种操作系统下对 Web 系统进行兼容性测试。

4.2.浏览器测试

浏览器是 Web 客户端最核心的构件,来自不同厂商的浏览器对 Java ,、 Javascrīpt 、 ActiveX 、 plug-ins 或不同的 HTML 规格有不同的支持。例如, ActiveX 是 Microsoft 的产品,是为 Internet Explorer 而设计的, Javascrīpt 是 Netscape 的产品, Java 是 Sun 的产品等等。另外,框架和层次结构风格在不同的浏览器中也有不同的显示,甚至根本不显示。不同的浏览器对安全性和 Java 的设置也不一样。

测试浏览器兼容性的一个方法是创建一个兼容性矩阵。在这个矩阵中,测试不同厂商、不同版本的浏览器对某些构件和设置的适应性。

4.3 分辨率测试

页面版式在 640x400、600x800 或 1024x768 的分辨率模式下是否显示正常? 字体是否太小以至于无法浏览? 或者是太大? 文本和图片是否对齐?

4.4 Modem/连接速率

是否有这种情况,用户使用 28.8 modem下载一个页面需要 10 分钟,但测试人员在测试的时候使用的是 T1 专线? 用户在下载文章或演示的时候,可能会等待比较长的时间,但却不会耐心等待首页的出现。最后,需要确认图片不会太大。

4.5 打印机

用户可能会将网页打印下来。因此网也在设计的时候要考虑到打印问题,注意节约纸张和油墨。有不少用户喜欢阅读而不是盯着屏幕,因此需要验证网页打印是否正常。有时在屏幕上显示的图片和文本的对齐方式可能与打印出来的东西不一样。测试人员至少需要验证订单确认页面打印是正常的。

4.6 组合测试

最后需要进行组合测试。600x800 的分辨率在 MAC 机上可能不错,但是在 IBM 兼容机上却很难看。在 IBM 机器上使用 Netscape 能正常显示,但却无法使用 Lynx 来浏览。如果是内部使用的 web 站点,测试可能会轻松一些。如果公司指定使用某个类型的浏览器,那么只需在该浏览器上进行测试。如果所有的人都使用 T1 专线,可能不需要测试下载施加。(但需要注意的是,可能会有员工从家里拨号进入系统) 有些内部应用程序,开发部门可能在系统需求中声明不支持某些系统而只支持一些那些已设置的系统。但是,理想的情况是,系统能在所有机器上运行,这样就不会限制将来的发展和变动。

采取措施:根据实际情况,采取等价划分的方法,列出兼容性矩阵

安全性测试

Web 应用系统的安全性测试区域主要有:

   ( 1 )现在的 Web 应用系统基本采用先注册,后登陆的方式。因此,必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登陆而直接浏览某个页面等。

   ( 2 ) Web 应用系统是否有超时的限制,也就是说,用户登陆后在一定时间内(例如 15 分钟)没有点击任何页面,是否需要重新登陆才能正常使用。

   ( 3 )为了保证 Web 应用系统的安全性,日志文件是至关重要的。需要测试相关信息是否写进了日志文件、是否可追踪。

   ( 4 )当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性。

   ( 5 )服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题。

本文从功能、性能、可用性、客户端兼容性、安全性等方面讨论了基于 Web 的系统测试方法。

接口测试

在很多情况下,web 站点不是孤立。Web 站点可能会与外部服务器通讯,请求数据、验证数据或提交订单。

6.1服务器接口

第一个需要测试的接口是浏览器与服务器的接口。测试人员提交事务,然后查看服务器记录,并验证在浏览器上看到的正好是服务器上发生的。测试人员还可以查询数据库,确认事务数据已正确保存。

这种测试可以归到功能测试中的表单测试和数据校验测试中

6.2 外部接口

有些 web 系统有外部接口。例如,网上商店可能要实时验证信用卡数据以减少欺诈行为的发生。测试的时候,要使用 web 接口发送一些事务数据,分别对有效信用卡、无效信用卡和被盗信用卡进行验证。如果商店只使用 Visa 卡和 Mastercard 卡, 可以尝试使用 Discover 卡的数据。(简单的客户端脚本能够在提交事务之前对代码进行识别,例如 3 表示 American Express,4 表示 Visa,5 表示 Mastercard,6 代表Discover。)通常,测试人员需要确认软件能够处理外部服务器返回的所有可能的消息。

这种情况在远程抄表中可能会体现到

6.3 错误处理

最容易被测试人员忽略的地方是接口错误处理。通常我们试图确认系统能够处理所有错误,但却无法预期系统所有可能的错误。尝试在处理过程中中断事务,看看会发生什么情况?订单是否完成?尝试中断用户到服务器的网络连接。尝试中断 web 服务器到信用卡验证服务器的连接。在这些情况下,系统能否正确处理这些错误?是否已对信用卡进行收费?如果用户自己中断事务处理,在订单已保存而用户没有返回网站确认的时候,需要由客户代表致电用户进行订单确认。

采取措施:在理解需求的基础上,充分发挥想象力,尽量比较全面的列出各种异常情况

常见的Web应用安全漏洞

已知弱点和错误配置

  已知弱点包括Web应用使用的操作系统和第三方应用程序中的所有程序错误或者可以被利用的漏洞。这个问题也涉及到错误配置,包含有不安全的默认设置或管理员没有进行安全配置的应用程序。一个很好的例子就是你的Web服务器被配置成可以让任何用户从系统上的任何目录路径通过,这样可能会导致泄露存储在Web服务器上的一些敏感信息,如口令、源代码或客户信息等。

隐藏字段

  在许多应用中,隐藏的HTML格式字段被用来保存系统口令或商品价格。尽管其名称如此,但这些字段并不是很隐蔽的,任何在网页上执行“查看源代码”的人都能看见。许多Web应用允许恶意的用户修改HTML源文件中的这些字段,为他们提供了以极小成本或无需成本购买商品的机会。这些攻击行动之所以成功,是因为大多数应用没有对返回网页进行验证;相反,它们认为输入数据和输出数据是一样的。

后门和调试漏洞

开发人员常常建立一些后门并依靠调试来排除应用程序的故障。在开发过程中这样做可以,但这些安全漏洞经常被留在一些放在Internet上的最终应用中。一些常见的后门使用户不用口令就可以登录或者访问允许直接进行应用配置的特殊URL。

跨站点脚本编写

  一般来说,跨站点编写脚本是将代码插入由另一个源发送的网页之中的过程。利用跨站点编写脚本的一种方式是通过HTML格式,将信息帖到公告牌上就是跨站点脚本编写的一个很好范例。恶意的用户会在公告牌上帖上包含有恶意的Javascrīpt代码的信息。当用户查看这个公告牌时,服务器就会发送HTML与这个恶意的用户代码一起显示。客户端的浏览器会执行该代码,因为它认为这是来自Web服务器的有效代码。

参数篡改

  参数篡改包括操纵URL字符串,以检索用户以其他方式得不到的信息。访问Web应用的后端数据库是通过常常包含在URL中的SQL调用来进行的。恶意的用户可以操纵SQL代码,以便将来有可能检索一份包含所有用户、口令、信用卡号的清单或者储存在数据库中的任何其他数据。

更改cookie

  更改cookie指的是修改存储在cookie中的数据。网站常常将一些包括用户ID、口令、帐号等的cookie存储到用户系统上。通过改变这些值,恶意的用户就可以访问不属于他们的帐户。攻击者也可以窃取用户的cookie并访问用户的帐户,而不必输入ID和口令或进行其他验证。

输入信息控制

  输入信息检查包括能够通过控制由CGI脚本处理的HTML格式中的输入信息来运行系统命令。例如,使用CGI脚本向另一个用户发送信息的形式可以被攻击者控制来将服务器的口令文件邮寄给恶意的用户或者删除系统上的所有文件。

缓冲区溢出

  缓冲区溢出是恶意的用户向服务器发送大量数据以使系统瘫痪的典型攻击手段。该系统包括存储这些数据的预置缓冲区。如果所收到的数据量大于缓冲区,则部分数据就会溢出到堆栈中。如果这些数据是代码,系统随后就会执行溢出到堆栈上的任何代码。Web应用缓冲区溢出攻击的典型例子也涉及到HTML文件。如果HTML文件上的一个字段中的数据足够的大,它就能创造一个缓冲器溢出条件。

直接访问浏览

  直接访问浏览指直接访问应该需要验证的网页。没有正确配置的Web应用程序可以让恶意的用户直接访问包括有敏感信息的URL或者使提供收费网页的公司丧失收入。

Web应用安全两步走

  Web应用攻击能够给企业的财产、资源和声誉造成重大破坏。虽然Web应用增加了企业受攻击的危险,但有许多方法可以帮助减轻这一危险。首先,必须教育开发人员了解安全编码方法。仅此项步骤就会消除大部分Web应用的安全问题。其次,坚持跟上所有厂商的最新安全补丁程序。如果不对已知的缺陷进行修补,和特洛伊木马一样,攻击者就能很容易地利用你的Web应用程序穿过防火墙访问Web服务器、数据库服务器、应用服务器等等。将这两项步骤结合起来,就会大大减少Web应用受到攻击的风险。同时管理人员必须采取严格措施,以保证不让任何东西从这些中溜过去

可用性测试

可用性测试估计是提的比较多的吧。我记得以前看过一本书叫《Don't let me think》。里面就是讲述了一些提高可用性的方法还有设计原则之类的。《软件测试》这本书提到了10个最容易犯错点:

1.Gratuitous Use of Bleeding-Edge Technology-滥用先进技术,其实做IT这个大家都知道技术更新的很快,但是一般商用的软件都不会选择最新版本或者最前沿的技术,就好像JAVA都出到1.6了但是很多开发团队还是在用1.4。稳定压倒一切啊。

2.Scrolling Text, Marquees, and Constantly Running Animations-不要搞的整个页面动来动去的,因为用户看的是内容,看的是内容是否有价值,而不是花里胡哨的飘来飘去的文字。

3.Long Scrolling Pages-一个页面拉啊拉~拉半天都不到底。

4.Non-Standard Link Colors-前面都说过了,标准是要去跟的,不要随便改动,就好像一般链接是蓝色的那么就蓝色吧,特别大的标题做成红色是合理的,什么不好的事情做成黑的也是合理的,但是如果出现绿色di……那么就好像有点不合理哦。

5.Outdated Information-过时的内容,这个有可能出现在邮件地址,电话号码的地方。

6.Overly Long Download Times-过长的下载时间,一般用户的忍耐性都是有限,而且现在SB电信搞什么包月改为240小时,时间就是金钱啊。估计没人喜欢看着浏览器的进度栏干瞪眼。

7.Lack of Navigation Support-缺乏导航支持。有些页面有进没有出,或者不能方便的返回上层页面。

8.Orphan Pages-孤立的页面。没法进,万一不幸进了还没法出。

9.Complex Website Addresses (URLs)-这个要看当时注册了个啥域名了。。。

10.Using Frames-框架的确受人鄙视,不过不知道为什么哦,RationalClearQuest就用的Frame。

排错是一个相当艰苦的过程,究其原因除了开发人员心理方面的障碍外,还因为隐藏在程序中的错误具有下列特殊的性质:

  (1)错误的外部征兆远离引起错误的内部原因,对于高度耦合的程序结构此类现象更为严重;

  (2)纠正一个错误造成了另一错误现象(暂时)的消失;

  (3)某些错误征兆只是假象;

  (4)因操作人员一时疏忽造成的某些错误征兆不易追踪;

  (5)错误是由于风时而不是程序引起的;

  (6)输入条件难以精确地再构造(例如,某些实时应用的输入次序不确定);

  (7)错误征兆时有时无,此现象对嵌入式系统尤其普遍;

  (8)错误是由于把任务分布在若干台不同处理机上运行而造的。

  在软件排错过程中,可能遇到大大小小、形形色色的问题,随着问题的增多,排错人员的压力也随之增大,过分地紧张致使开发人员在排除一个问题的同时又引入更多的新问题。

前面多次提到,修改一处老问题可能引入几处新问题,有时程序越改越乱,但若能做到每次纠错前都扪心自问三个问题,情况将大为改观:

  ①导致这个错误的原因在程序其他部分还可能存在吗?

  ②本次修改可能对程序中相关的逻辑和数据造成什么影响?引起什么问题?

  ③上次遇到的类似问题是如何排除的?

复制文件:

* 命令格式:

scp local_file remote_username@remote_ip:remote_folder

或者

scp local_file remote_username@remote_ip:remote_file

或者

scp local_file remote_ip:remote_folder

或者

scp local_file remote_ip:remote_file

第1,2个指定了用户名,命令执行后需要再输入密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名;

第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名;

* 例子:

scp /home/space/music/1.mp3 [email protected]:/home/root/others/music

scp /home/space/music/1.mp3 [email protected]:/home/root/others/music/001.mp3

scp /home/space/music/1.mp3 中国矿业大学-主页:/home/root/others/music

scp /home/space/music/1.mp3 中国矿业大学-主页:/home/root/others/music/001.mp3

* 复制目录:

* 命令格式:

scp -r local_folder remote_username@remote_ip:remote_folder

或者

scp -r local_folder remote_ip:remote_folder

第1个指定了用户名,命令执行后需要再输入密码;

第2个没有指定用户名,命令执行后需要输入用户名和密码;

* 例子:

scp -r /home/space/music/ [email protected]:/home/root/others/

scp -r /home/space/music/ 中国矿业大学-主页:/home/root/others/

上面 命令 将 本地 music 目录 复制 到 远程 others 目录下,即复制后有 远程 有 ../others/music/ 目录

一、输入框

1、字符型输入框:

(1)字符型输入框:英文全角、英文半角、数字、空或者空格、特殊字符“~!@#¥%……&*?[]{}”特别要注意单引号和&符号。禁止直接输入特殊字符时,使用“粘贴、拷贝”功能尝试输入。

(2)长度检查:最小长度、最大长度、最小长度-1、最大长度+1、输入超工字符比如把整个文章拷贝过去。

(3)空格检查:输入的字符间有空格、字符前有空格、字符后有空格、字符前后有空格

(4)多行文本框输入:允许回车换行、保存后再显示能够保存输入的格式、仅输入回车换行,检查能否正确保存(若能,检查保存结果,若不能,查看是否有正常提示)、

(5)安全性检查:输入特殊字符串(null,NULL, ,javascript,,,<html>,<td>)、输入脚本函数(<script>alert("abc")</script>)、doucment.write("abc")、<b>hello</b>)</p> <p></p> <p>2、数值型输入框:</p> <p>(1)边界值:最大值、最小值、最大值+1、最小值-1</p> <p>(2)位数:最小位数、最大位数、最小位数-1最大位数+1、输入超长值、输入整数</p> <p>(3)异常值、特殊字符:输入空白(NULL)、空格或"~!@#$%^&*()_+{}|[]\:"<>?;',./?;:'-=等可能导致系统错误的字符、禁止直接输入特殊字符时,尝试使用粘贴拷贝查看是否能正常提交、word中的特殊功能,通过剪贴板拷贝到输入框,分页符,分节符类似公式的上下标等、数值的特殊符号如∑,㏒,㏑,∏,+,-等、</p> <p>输入负整数、负小数、分数、输入字母或汉字、小数(小数前0点舍去的情况,多个小数点的情况)、首位为0的数字如01、02、科学计数法是否支持1.0E2、全角数字与半角数字、数字与字母混合、16进制,8进制数值、货币型输入(允许小数点后面几位)、</p> <p>(4)安全性检查:不能直接输入就copy</p> <p></p> <p>3、日期型输入框<strong>:</strong></p> <p>(1)合法性检查:(输入0日、1日、32日)、月输入[1、3、5、7、8、10、12]、日输入[31]、月输入[4、6、9、11]、日输入[30][31]、输入非闰年,月输入[2],日期输入[28、29]、输入闰年,月输入[2]、日期输入[29、30]、月输入[0、1、12、13]</p> <p>(2)异常值、特殊字符:输入空白或NULL、输入~!@#¥%……&*(){}[]等可能导致系统错误的字符</p> <p>(3)安全性检查:不能直接输入,就copy,是否数据检验出错?</p> <p>4、信息重复:在一些需要命名,且名字应该唯一的信息输入重复的名字或ID,看系统有没有处理,会否报错,重名包括是否区分大小写,以及在输入内容的前后输入空格,系统是否作出正确处理.</p> <p></p> <p><strong>二、搜索功能</strong></p> <p>若查询条件为输入框,则参考输入框对应类型的测试方法</p> <p>1、功能实现:</p> <p>(1)如果支持模糊查询,搜索名称中任意一个字符是否能搜索到</p> <p>(2)比较长的名称是否能查到</p> <p>(3)输入系统中不存在的与之匹配的条件</p> <p>(4)用户进行查询操作时,一般情况是不进行查询条件的清空,除非需求特殊说明。</p> <p>2、组合测试:</p> <p>(1)不同查询条件之间来回选择,是否出现页面错误(单选框和多选框最容易出错)</p> <p>(2)测试多个查询条件时,要注意查询条件的组合测试,可能不同组合的测试会报错。</p> <p><strong>三、添加、修改功能</strong></p> <p></p> <p>1、特殊键:(1)是否支持Tab键 (2)是否支持回车键</p> <p>2、提示信息:(1)不符合要求的地方是否有错误提示</p> <p>3、唯一性:(1)字段唯一的,是否可以重复添加,添加后是否能修改为已存在的字段(字段包括区分大小写以及在输入的内容前后输入空格,保存后,数据是否真的插入到数据库中,注意保存后数据的正确性)</p> <p>4、数据 正确性:</p> <p>(1)对编辑页的每个编辑项进行修改,点击保存,是否可以保存成功,检查想关联的数据是否得到更新。</p> <p>(2)进行必填项检查(即是否给出提示以及提示后是否依然把数据存到数据库中;是否提示后出现页码错乱等)</p> <p>(3)是否能够连续添加(针对特殊情况)</p> <p>(4)在编辑的时候,注意编辑项的长度限制,有时在添加的时候有,在编辑的时候却没有(注意要添加和修改规则是否一致)</p> <p>(5)对于有图片上传功能的编辑框,若不上传图片,查看编辑页面时是否显示有默认的图片,若上传图片,查看是否显示为上传图片</p> <p>(6)修改后增加数据后,特别要注意查询页面的数据是否及时更新,特别是在首页时要注意数据的更新。</p> <p>(7)提交数据时,连续多次点击,查看系统会不会连续增加几条相同的数据或报错。</p> <p>(8)若结果列表中没有记录或者没选择某条记录,点击修改按钮,系统会抛异常。</p> <p></p> <p><strong>四、删除功能</strong></p> <p>1、特殊键:(1)是否支持Tab键 (2)是否支持回车键</p> <p>2、提示信息:(1)不选择任何信息,直接点击删除按钮,是否有提示(2)删除某条信息时,应该有确认提示</p> <p>3、数据 实现:(1)是否能连续删除多个产品(2)当只有一条数据时,是否可以删除成功 (3)删除一条数据后,是否可以添加相同的数据(4)如系统支持批量删除,注意删除的信息是否正确 (5)如有全选,注意是否把所有的数据删除(6)删除数据时,要注意相应查询页面的数据是否及时更新 (7)如删除的数据与其他业务数据关联,要注意其关联性(如删除部门信息时,部门下游员工,则应该给出提示)(8)如果结果列表中没有记录或没有选择任何一条记录,点击删除按钮系统会报错。</p> <p>如:某一功能模块具有最基本的增删改查功能,则需要进行以下测试</p> <p>单项功能测试(增加、修改、查询、删除)</p> <p>增加——>增加——>增加 (连续增加测试)</p> <p>增加——>删除</p> <p>增加——>删除——>增加 (新增加的内容与删除内容一致)</p> <p>增加——>修改——>删除</p> <p>修改——>修改——>修改 (连续修改测试)</p> <p>修改——>增加(新增加的内容与修改前内容一致)</p> <p>修改——>删除</p> <p>修改——>删除——>增加 (新增加的内容与删除内容一致)</p> <p>删除——>删除——>删除 (连续删除测试)</p> <p></p> <p><strong>五、注册、登陆模块</strong></p> <p>1、注册功能:</p> <p>(1)注册时,设置密码为特殊版本号,检查登录时是否会报错</p> <p>(2)注册成功后,页面应该以登陆状态跳转到首页或指定页面</p> <p>(3)在注册信息中删除已输入的信息,检查是否可以注册成功。</p> <p>2、登陆 功能:</p> <p>(1)输入正确的用户名和正确的密码</p> <p>(2)输入正确的用户名和错误的密码</p> <p>(3)输入错误的用户名和正确的密码</p> <p>(4)输入错误的用户名和错误的密码</p> <p>(5)不输入用户名和密码(均为空格)</p> <p>(6)只输入用户名,密码为空</p> <p>(7)用户名为空,只输入密码</p> <p>(8)输入正确的用户名和密码,但是不区分大小写</p> <p>(9)用户名和密码包括特殊字符</p> <p>(10)用户名和密码输入超长值</p> <p>(11)已删除的用户名和密码</p> <p>(12)登录时,当页面刷新或重新输入数据时,验证码是否更新</p> <p><strong>六、上传图片测试</strong></p> <p>1、功能 实现:</p> <p>(1)文件类型正确、大小合适</p> <p>(2)文件类型正确,大小不合适</p> <p>(3)文件类型错误,大小合适</p> <p>(4)文件类型和大小都合适,上传一个正在使用中的图片</p> <p>(5)文件类型大小都合适,手动输入存在的图片地址来上传</p> <p>(6)文件类型和大小都合适,输入不存在的图片地址来上传</p> <p>(7)文件类型和大小都合适,输入图片名称来上传</p> <p>(8)不选择文件直接点击上传,查看是否给出提示</p> <p>(9)连续多次选择不同的文件,查看是否上传最后一次选择的文件</p> <p></p> <p><strong>七、查询结果列表</strong></p> <p>1、功能 实现:</p> <p>(1)列表、列宽是否合理</p> <p>(2)列表数据太宽有没有提供横向滚动</p> <p>(3)列表的列名有没有与内容对应</p> <p>(4)列表的每列的列名是否描述的清晰</p> <p>(5)列表是否把不必要的列都显示出来</p> <p>(6)点击某列进行排序,是否会报错(点击查看每一页的排序是否正确)</p> <p>(7)双击或单击某列信息,是否会报错</p> <p></p> <p><strong>八、返回键检查</strong></p> <p>1、一条已经成功提交的记录,返回后再提交,是否做了处理</p> <p>2、检查多次使用返回键的情况,在有返回键的地方,返回到原来的页面多次,查看是否会出错</p> <p></p> <p><strong>九、回车键检查</strong></p> <p>1、在输入结果后,直接按回车键,看系统如何处理,是否会报错</p> <p></p> <p><strong>十、刷新键检查</strong></p> <p>1、在Web系统中,使用刷新键,看系统如何处理,是否会报错</p> <p></p> <p><strong>十一、直接URL链接检查</strong></p> <p>1、在Web系统中,在地址栏直接输入各个功能页面的URL地址,看系统如何处理,是否能够直接链接查看(匿名查看),是否有权限控制,是否直接执行,并返回相应结果页;</p> <p></p> <p><strong>十二、界面和易用性测试</strong></p> <p>1、风格、样式、颜色是否协调</p> <p>2、界面布局是否整齐、协调(保证全部显示出来的,尽量不要使用滚动条</p> <p>3、界面操作、标题描述是否恰当(描述有歧义、注意是否有错别字)</p> <p>4、操作是否符合人们的常规习惯(有没有把相似的功能的控件放在一起,方便操作)</p> <p>5、提示界面是否符合规范(不应该显示英文的cancel、ok,应该显示中文的确定等)</p> <p>6、界面中各个控件是否对齐</p> <p>7、日期控件是否可编辑</p> <p>8、日期控件的长度是否合理,以修改时可以把时间全部显示出来为准</p> <p>9、查询结果列表列宽是否合理、标签描述是否合理</p> <p>10、查询结果列表太宽没有横向滚动提示</p> <p>11、对于信息比较长的文本,文本框有没有提供自动竖直滚动条</p> <p>12、数据录入控件是否方便</p> <p>13、有没有支持Tab键,键的顺序要有条理,不乱跳</p> <p>14、有没有提供相关的热键</p> <p>15、控件的提示语描述是否正确</p> <p>16、模块调用是否统一,相同的模块是否调用同一个界面</p> <p>17、用滚动条移动页面时,页面的控件是否显示正常</p> <p>18、日期的正确格式应该是XXXX-XX-XX或XXXX-XX-XX XX:XX:XX</p> <p>19、页面是否有多余按钮或标签</p> <p>20、窗口标题或图标是否与菜单栏的统一</p> <p>21、窗口的最大化、最小化是否能正确切换</p> <p>22、对于正常的功能,用户可以不必阅读用户手册就能使用</p> <p>23、执行风险操作时,有确认、删除等提示吗</p> <p>24、操作顺序是否合理</p> <p>25、正确性检查:检查页面上的form, button, table, header, footer,提示信息,还有其他文字拼写,句子的语法等是否正确。</p> <p>26、系统应该在用户执行错误的操作之前提出警告,提示信息.</p> <p>27、页面分辨率检查,在各种分辨率浏览系统检查系统界面友好性。</p> <p>28、合理性检查:做delete, update, add, cancel, back等操作后,查看信息回到的页面是否合理。</p> <p>29、检查本地化是否通过:英文版不应该有中文信息,英文翻译准确,专业</p> <p></p> <p><strong>十三、兼容性测试</strong></p> <p>兼容性测试不只是指界面在不同操作系统或浏览器下的兼容,有些功能方面的测试,也要考虑到兼容性,</p> <p>包括操作系统兼容和应用软件兼容,可能还包括硬件兼容</p> <p>比如涉及到ajax、jquery、javascript等技术的,都要考虑到不同浏览器下的兼容性问题。</p> <p></p> <p><strong>十四、链接测试</strong></p> <p>主要是保证链接的可用性和正确性,它也是网站测试中比较重要的一个方面。</p> <p>可以使用特定的工具如XENU来进行链接测试。</p> <p>1导航测试</p> <p>导航描述了用户在一个页面内操作的方式,在不同的用户接口控制之间,例如按钮、对话框、列表和窗口等;或在不同的连接页面之间。通过考虑下列问题,可以决定一个Web应用系统是否易于导航:导航是否直观?Web系统的主要部分是否可通过主页存取?Web系统是否需要站点地图、搜索引擎或其他的导航帮助?</p> <p>在一个页面上放太多的信息往往起到与预期相反的效果。Web应用系统的用户趋向于目的驱动,很快地扫描一个Web应用系统,看是否有满足自己需要的信息,如果没有,就会很快地离开。很少有用户愿意花时间去熟悉Web应用系统的结构,因此,Web应用系统导航帮助要尽可能地准确。</p> <p>导航的另一个重要方面是Web应用系统的页面结构、导航、菜单、连接的风格是否一致。确保用户凭直觉就知道Web应用系统里面是否还有内容,内容在什么地方。</p> <p>Web应用系统的层次一旦决定,就要着手测试用户导航功能,让最终用户参与这种测试,效果将更加明显。</p> <p></p> <p>2图形测试</p> <p>在Web应用系统中,适当的图片和动画既能起到广告宣传的作用,又能起到美化页面的功能。一个Web应用系统的图形可以包括图片、动画、边框、颜色、字体、背景、按钮等。图形测试的内容有:</p> <p>(1)要确保图形有明确的用途,图片或动画不要胡乱地堆在一起,以免浪费传输时间。Web应用系统的图片尺寸要尽量地小,并且要能清楚地说明某件事情,一般都链接到某个具体的页面。</p> <p>(2)验证所有页面字体的风格是否一致。</p> <p>(3)背景颜色应该与字体颜色和前景颜色相搭配。</p> <p>(4)图片的大小和质量也是一个很重要的因素,一般采用JPG或GIF压缩,最好能使图片的大小减小到30k以下</p> <p>(5)最后,需要验证的是文字回绕是否正确。如果说明文字指向右边的图片,应该确保该图片出现在右边。不要因为使用图片而使窗口和段落排列古怪或者出现孤行。</p> <p>通常来说,使用少许或尽量不使用背景是个不错的选择。如果您想用背景,那么最好使用单色的,和导航条一起放在页面的左边。另外,图案和图片可能会转移用户的注意力。</p> <p></p> <p><strong>十五、业务流程测试(主要功能测试)</strong></p> <p>业务流程,一般会涉及到多个模块的数据,所以在对业务流程测试时,首先要保证单个模块功能的正确性,其次就要对各个模块间传递的数据进行测试,这往往是容易出现问题的地方,测试时一定要设计不同的数据进行测试。</p> <p></p> <p><strong>十六、安全性测试</strong></p> <p>(1)SQL注入(比如登陆页面)</p> <p>(2)XSS跨网站脚本攻击:程序或数据库没有对一些特殊字符进行过滤或处理,导致用户所输入的一些破坏性的脚本语句能够直接写进数据库中,浏览器会直接执行这些脚本语句,破坏网站的正常显示,或网站用户的信息被盗,构造脚本语句时,要保证脚本的完整性。</p> <p>  document.write("abc")</p> <p>  <script>alter("abc")</script></p> <p>(3)URL地址后面随便输入一些符号,并尽量是动态参数靠后</p> <p>(4)验证码更新问题</p> <p>(5)现在的Web应用系统基本采用先注册,后登陆的方式。因此,必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登陆而直接浏览某个页面等。</p> <p>(6)Web应用系统是否有超时的限制,也就是说,用户登陆后在一定时间内(例如15分钟)没有点击任何页面,是否需要重新登陆才能正常使用。</p> <p>(7)为了保证Web应用系统的安全性,日志文件是至关重要的。需要测试相关信息是否写进了日志文件、是否可追踪。</p> <p>(8)当使用了安**接字时,还要测试加密是否正确,检查信息的完整性。</p> <p>(9)服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题。</p> <p></p> <p><strong>十八、测试中应该注意的其他情况</strong></p> <p>1、在测试时,与网络有关的步骤或者模块必须考虑到断网的情况</p> <p>2、每个页面都有相应的Title,不能为空,或者显示“无标题页”</p> <p>3、在测试的时候要考虑到页面出现滚动条时,滚动条上下滚动时,页面是否正常</p> <p>4、URL不区分大小写,大小写不敏感</p> <p>5、、对于电子商务网站,当用户并发购买数量大于库存的数量时,系统如何处理</p> <p>6、测试数据避免单纯输入“123”、“abc“之类的,让测试数据尽量接近实际</p> <p>7、进行测试时,尽量不要用超级管理员进行测试,用新建的用户进行测试。测试人员尽量不要使用同一个用户进行测试</p> <p>8、提示信息:提示信息是否完整、正确、详细</p> <p>9、帮助信息:是否提供帮助信息,帮助信息的表现形式(页面文字、提示信息、帮助文件),帮助信息是否正确、详细</p> <p>10、可扩展性:是否由升级的余地,是否保留了接口</p> <p>11、稳定性:运行所需的软硬件配置,占用资源情况,出现问题时的容错性,对数据的保护</p> <p>12、运行速度:运行的快慢,带宽占用情况</p> <p></p> <p><strong>WEB测试资料</strong></p> <p>1页面部分</p> <p>(1) 页面清单是否完整(是否已经将所需要的页面全部都列出来了)</p> <p>(2) 页面是否显示(在不同分辨率下页面是否存在,在不同浏览器版本中页面是是否显示)</p> <p>(3) 页面在窗口中的显示是否正确、美观(在调整浏览器窗口大小时,屏幕刷新是否正确)</p> <p>(4) 页面特殊效果(如特殊字体效果、动画效果)是否显示</p> <p>(5) 页面特殊效果显示是否正确</p> <p></p> <p>2 页面元素部分</p> <p>(1)页面元素清单(为实现功能,是否将所需要的元素全部都列出来了,如按钮、单选框、复选框、列表框、超连接、输入框等等)</p> <p>(2)素是否显示(元素是否存在)</p> <p>(3)页面元素是否显示正确(主要针对文字、图形、签章)</p> <p>(4)页面元素的外形、摆放位置(如按钮、列表框、核选框、输入框、超连接等)</p> <p>(5) 页面元素基本功能是否实现(如文字特效、动画特效、按钮、超连接)</p> <p>(6) 页面元素的容错性列表(如输入框、时间列表或日历)</p> <p>(7) 页面元素的容错性是否存在</p> <p>(8) 页面元素的容错性是否正确</p> <p></p> <p>3 功能部分</p> <p>(1) 数据初始化是否执行</p> <p>(2) 数据初始化是否正确</p> <p>(3) 数据处理功能是否执行</p> <p>(4) 数据处理功能是否正确</p> <p>(5) 数据保存是否执行</p> <p>(6) 数据保存是否正确</p> <p>(7) 是否对其他功能有影响</p> <p>(8) 如果影响其他功能,系统能否作出正确的反应</p> <p>(9) 其他错误</p> <p>(10) 对模块的具体功能进行测试时可以列出功能模块的所有功能,进行排列组合,测试所有情况</p> <p>如:某一功能模块具有最基本的增删改查功能,则需要进行以下测试</p> <p>单项功能测试(增加、修改、查询、删除)</p> <p>增加——>增加——>增加 (连续增加测试)</p> <p>增加——>删除</p> <p>增加——>删除——>增加 (新增加的内容与删除内容一致)</p> <p>增加——>修改——>删除</p> <p>修改——>修改——>修改 (连续修改测试)</p> <p>修改——>增加 (新增加的内容与修改前内容一致)</p> <p>修改——>删除</p> <p>修改——>删除——>增加 (新增加的内容与删除内容一致)</p> <p>删除——>删除——>删除 (连续删除测试)</p> <p>(11)查询功能分为两种情况,验证操作结果。</p> <p>1、打开页面时自动显示结果,则不特别强调;</p> <p>2、需要手工操作进行查询,则每次在其他功能完成后进行。</p> <p></p> <p>4 提示信息</p> <p>(1) 成功、失败提示</p> <p>(2) 操作结果提示</p> <p>(3) 确认提示</p> <p>(4) 危险操作、重要操作提示</p> <p>(5) 返回页面 提示后显示的页面</p> <p></p> <p>5 容错性</p> <p>注意以下几种情况</p> <p>(1) 为空、非空</p> <p>(2) 唯一性</p> <p>(3 )字长、格式</p> <p>(4) 数字、邮政编码、金额、电话、电子邮件、ID号、密码</p> <p>(5) 日期、时间</p> <p>(6) 特殊字符 (对数据库)英文单、双引号,&符号</p> <p></p> <p>6 权限部分</p> <p>功能权限: 指定用户可以使用那些功能,不能使用那些功能</p> <p>数据权限: 指定用户可以处理那些数据,不可以处理那些数据。可</p> <p>以合并到功能测试</p> <p>操作权限: 在逻辑关系上,操作前后顺序、数据处理情况。可以合</p> <p>并到功能测试</p> <p>权限变化: 可以合并到功能测试</p> <p>(1) 功能权限是否存在</p> <p>(2 )功能权限是否正确</p> <p>(3) 数据权限是否存在</p> <p>(4) 数据权限是否正确</p> <p>(5)操作权限是否存在</p> <p>(6) 操作权限是否正确</p> <p>(7) 引起权限变化的功能列表</p> <p>(8) 功能权限变化还是数据权限变化,或两者兼有</p> <p>(9) 权限变化是否正确</p> <p></p> <p>7 键盘操作</p> <p>(1) Tab键的使用</p> <p>(2) 上下方向键的使用</p> <p>(3) Enter键的使用</p> <p>(4) 系统设定快捷键的使用(如果设置有快捷键)</p> <p></p> <p>8 测试中还应注意的其他事项</p> <p>(6) 完整性:是否是一个整体,没有功能缺损</p> <p>(7) 易用性:使用是否方便</p> <p>(8) 一致性:类似的问题用类似的方法处理</p> <p>(9) 提示信息:提示信息是否完整、正确、详细</p> <p>(10) 帮助信息:是否提供帮助信息,帮助信息的表现形式(页面文字、提示信息、帮助文件),帮助信息是否正确、详细</p> <p>(11) 兼容性:包括操作系统兼容和应用软件兼容,可能还包括硬件兼容</p> <p>(12) 可扩展性:是否由升级的余地,是否保留了接口</p> <p>(13) 稳定性:运行所需的软硬件配置,占用资源情况,出现问题时的容错性,对数据的保护</p> <p>(14) 运行速度:运行的快慢,带宽占用情况</p> <p></p> <p><strong>输入方面总结:</strong></p> <p>1.验证输入与输出的是否信息一致;</p> <p>  2.输入框之前的标题是否正确;</p> <p>  3.对特殊字符的处理,尤其是输入信息徐需要发送到数据库的。特殊字符包括:'(单引号)、"(双引号)、[](中括号)、()(小括号)、{}(大括号)、;(分号)、<>(大于小于号)……</p> <p>  4.对输入框输入超过限制的字符的处理,一般非特殊的没有作出限制的在255byte左右;</p> <p>  5.输入框本身的大小、长度;</p> <p>  6.不同内码的字符的输入;</p> <p>  7.对空格、TAB字符的处理机制;</p> <p>  8.字符本身显示的颜色;</p> <p>  9.密码输入窗口转换成星号或其它符号;</p> <p>  10.密码输入框对其中的信息进行加密,防止采用破解星号的方法破解;</p> <p>  11.按下ctrl和alt键对输入框的影响;</p> <p>  12.对于新增、修改、注册时用的输入框,有限制的,应该输入时作出提示,指出不允许的或者标出允许的;</p> <p>  13.对于有约束条件要求的输入框应当在条件满足时输入框的状态发生相应的改变,比如选了湖南就应该列出湖南下面的市,或者选了某些条件之后,一些输入框会关闭或转为只读状态;</p> <p>  14.输入类型;根据前面的栏位标题判断该输入框应该输入哪些内容算是合理的。例如,是否允许输入数字或字母,不允许输入其他字符等。</p> <p>  15.输入长度;数据库字段有长度定义,当输入过长时,提交数据是否会出错。</p> <p>  16.输入状态;当处于某种状态下,输入框是否处于可写或非可写状态。例如,系统自动给予的编号等栏位作为唯一标识,当再次处于编辑状态下,输入框栏位应处于不可写状态,如果可写对其编辑的话,可能会造成数据重复引起冲突等。</p> <p>  暂时,就能想这么多,看大家谁还有观点,互相学习下!</p> <p>  17.如果是会进行数据库操作的输入框,还可以考虑输入SQL中的一些特殊符号如单引号等,有时会有意想不到的错误出现</p> <p>  18.输入类型 输入长度 是否允许复制粘贴 为空的情况 空格的考虑 半角全角测试 对于密码输入框要考虑显示的内容是* 输入错误时的提示信息及提示信息是否准确</p> <p>  19.可以先了解你要测试的输入框在软件系统的某个功能中所扮演的角色,然后了解其具体的输入条件,在将输入条件按照有效等价类,无效等价类,边界值等方法进行测试用例的设计。</p> <p>  20.关键字有大小写混合的情况;</p> <p>  21.关键字中含有一个或多个空格的情况,包括前空格,中间空格(多个关键字),和后空格;</p> <p>  22.关键字中是否支持通配符的情况(视功能而定);</p> <p>  23.关键字的长度分别为9、10、11个字符时的情况;</p> <p>  24.关键字是valid,但是没有匹配搜索结果的情况;</p> <p>  25.输入html的标签会出现哪些问题?输入<html> 会出现什么问题呢?(这条是我自己发现的,在网上也没找到类似的东东,呵呵,大家凑合着看吧)</p> <p><strong>还有几点:</strong></p> <p>1.功能点测试:是否满足需求所要求的功能</p> <p>2.字符串长度检查: 输入超出需求所说明的字符串长度的内容, 看系统是否检查字符串长度,会不会出错.</p> <p>3.字符类型检查: 在应该输入指定类型的内容的地方输入其他类型的内容(如在应该输入整型的地方输入其他字符类型),看系统是否检查字符类型,会否报错.</p> <p>4.标点符号检查: 输入内容包括各种标点符号,特别是空格,各种引号,回车键.看系统处理是否正确.</p> <p>5.中文字符处理: 在可以输入中文的系统输入中文,看会否出现乱码或出错.</p> <p>6.信息重复: 在一些需要命名,且名字应该唯一的信息输入重复的名字或ID,看系统有没有处理,会否报错,重名包括是否区分大小写,以及在输入内容的前后输入空格,系统是否作出正确处理.</p> <p>7.界面测试:界面的正确性、一致性、友好性、易用性。</p> <p></p> <p><strong>重点关注:</strong></p> <p>1.易用性检查:确保软件易于理解,方便使用。</p> <p>2.一致性检查:</p> <p>a.注意系统页面的风格是否一致,如字的大小、颜色、字体要相同。</p> <p>b.提示信息的表达方式是否一致。</p> <p>c.按钮排列顺序是否一致。</p> <p>d.back, cancel等按钮跳转页面处理是否一致。</p> <p>e.各字段的名称,位置、长度、类型是否和设计文档要求一致,如Employee No和LoginName不一致。</p> <p>3.正确性检查:检查页面上的form, button, table, header, footer,提示信息,还有其他文字拼写,句子的语法等是否正确。</p> <p>4.友好性检查:</p> <p>a.提示信息是否友好.</p> <p>b.系统应该在用户执行错误的操作之前提出警告,提示信息.</p> <p>c.页面分辨率检查,在各种分辨率浏览系统检查系统界面友好性。</p> <p>5.合理性检查:做delete, update, add, cancel, back等操作后,查看信息回到的页面是否合理。</p> <p>6.检查本地化是否通过:英文版不应该有中文信息,英文翻译准确,专业。</p> <p>7.页面最大化检查:测试最大化/最小化/还原时页面是否做了对应的处理。</p> <p><strong>最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走!</strong> <strong>希望能帮助到你!<span style="color:#fe2c24;">【100%无套路免费领取】</span></strong></p> <p class="img-center"><img alt="" src="http://img.e-com-net.com/image/info8/c7ad4acbea3e4f11a4bae4e6ab2d4c37.jpg" width="0" height="0"></p> <p class="img-center"><img alt="" src="http://img.e-com-net.com/image/info8/a85aca6562024ee5aa85dd59e53dd7ba.jpg" width="0" height="0"></p> </div> </div> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1731637361198051328"></div> <script type="text/javascript" src="/views/front/js/chanyan.js"></script> <!-- 文章页-底部 动态广告位 --> <div class="youdao-fixed-ad" id="detail_ad_bottom"></div> </div> <div class="col-md-3"> <div class="row" id="ad"> <!-- 文章页-右侧1 动态广告位 --> <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_1"> </div> </div> <!-- 文章页-右侧2 动态广告位 --> <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_2"></div> </div> <!-- 文章页-右侧3 动态广告位 --> <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_3"></div> </div> </div> </div> </div> </div> </div> <div class="container"> <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(软件测试,程序员,接口测试,自动化测试,web测试,测试工程师)</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1892374590433325056.htm" title="如何用 python 获取实时的股票数据?_python efinance(2)" target="_blank">如何用 python 获取实时的股票数据?_python efinance(2)</a> <span class="text-muted">元点三</span> <a class="tag" taget="_blank" href="/search/2024%E5%B9%B4%E7%A8%8B%E5%BA%8F%E5%91%98%E5%AD%A6%E4%B9%A0/1.htm">2024年程序员学习</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a> <div>先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!因此收集整理了一份《2024年最新Python全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课</div> </li> <li><a href="/article/1892374591150551040.htm" title="如何用 python 获取实时的股票数据?_python efinance,2024年最新pdf面试简历" target="_blank">如何用 python 获取实时的股票数据?_python efinance,2024年最新pdf面试简历</a> <span class="text-muted">元点三</span> <a class="tag" taget="_blank" href="/search/2024%E5%B9%B4%E7%A8%8B%E5%BA%8F%E5%91%98%E5%AD%A6%E4%B9%A0/1.htm">2024年程序员学习</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/pdf/1.htm">pdf</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a> <div>先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!因此收集整理了一份《2024年最新Python全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课</div> </li> <li><a href="/article/1892369420290945024.htm" title="在 DeepSeek 驱动的编程变革中抓住机遇并脱颖而出" target="_blank">在 DeepSeek 驱动的编程变革中抓住机遇并脱颖而出</a> <span class="text-muted">智想天开</span> <a class="tag" taget="_blank" href="/search/AI%E6%8A%80%E6%9C%AF/1.htm">AI技术</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/deep/1.htm">deep</a><a class="tag" taget="_blank" href="/search/learning/1.htm">learning</a> <div>公众号地址:在DeepSeek驱动的编程变革中抓住机遇并脱颖而出更多内容请关注公众号:智想天开前言在DeepSeek引领的新一轮AI技术革新中,程序员们正面临着前所未有的挑战。随着DeepSeek等人工智能工具的迅猛发展,编程领域正在发生深刻变革。这些先进的工具不仅能够自动化完成繁重的代码生成和调试任务,还能够根据大量数据提供优化建议,改变了传统编程的工作流程。虽然这些技术为提高工作效率和解放开发</div> </li> <li><a href="/article/1892369293711044608.htm" title="项目管理新趋势!2024年,Jira与Codes你更倾向谁?" target="_blank">项目管理新趋势!2024年,Jira与Codes你更倾向谁?</a> <span class="text-muted">Codes_AndyLiu</span> <a class="tag" taget="_blank" href="/search/jira/1.htm">jira</a><a class="tag" taget="_blank" href="/search/teambition/1.htm">teambition</a><a class="tag" taget="_blank" href="/search/redmine/1.htm">redmine</a><a class="tag" taget="_blank" href="/search/%E9%A1%B9%E7%9B%AE%E7%AE%A1%E7%90%86%E8%BD%AF%E4%BB%B6/1.htm">项目管理软件</a><a class="tag" taget="_blank" href="/search/%E9%A1%B9%E7%9B%AE%E7%AE%A1%E7%90%86%E5%B7%A5%E5%85%B7/1.htm">项目管理工具</a><a class="tag" taget="_blank" href="/search/%E9%A1%B9%E7%9B%AE%E7%AE%A1%E7%90%86/1.htm">项目管理</a><a class="tag" taget="_blank" href="/search/jira/1.htm">jira</a><a class="tag" taget="_blank" href="/search/%E5%9B%BD%E4%BA%A7%E5%B9%B3%E6%9B%BF/1.htm">国产平替</a> <div>一、项目管理软件新趋势概述2024年,项目管理软件呈现出诸多新趋势,这些趋势对于项目管理的重要性日益凸显。在数字化转型方面,项目管理软件成为企业实现数字化转型的关键工具。让老板感知数据,让中层管理者感受先进,让基层员工感到舒心.人工智能与自动化在项目管理软件中的应用也越来越广泛。项目管理软件正朝着智能化、自动化的方向迈进,利用AI技术提供个性化和场景化解决方案。例如,工作周报AI化,自动化测试,代</div> </li> <li><a href="/article/1892367403426312192.htm" title="Java面试题中高级进阶(JVM篇Java内存)" target="_blank">Java面试题中高级进阶(JVM篇Java内存)</a> <span class="text-muted">李老头探索</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/jvm/1.htm">jvm</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>前言本来想着给自己放松一下,刷刷博客,突然被几道面试题难倒!说说Java内存结构?说说对象分配规则?描述一下JVM加载class文件的原理机制?似乎有点模糊了,那就大概看一下面试题吧。好记性不如烂键盘***12万字的java面试题整理***Java内存结构方法区和堆是所有线程共享的内存区域;而java栈、本地方法栈和程序员计数器是运行是线程私有的内存区域。Java堆(Heap),是Java虚拟机所</div> </li> <li><a href="/article/1892365134530146304.htm" title="【python】连接Jira获取token以及jira对象" target="_blank">【python】连接Jira获取token以及jira对象</a> <span class="text-muted">唐古乌梁海</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/jira/1.htm">jira</a> <div>此脚本可以连接Jira,通过Jira的token,Jira对象可以实现与Jira的交互,从而完成jira与pytest的交互,或者其他自动化测试框架也行,例如:将pytest运行结果推送jira;将jira用例与自动化测试用例建立映射关系,将功能用例对应的自动化测试用例脚本路径推送到功能用例的描述栏,或者自动化栏里面#!/usr/bin/envpython#-*-coding:utf-8-*-#@</div> </li> <li><a href="/article/1892361850323005440.htm" title="DeepSeek 爆火:初级程序员的饭碗要丢?别慌,这是进阶的号角!" target="_blank">DeepSeek 爆火:初级程序员的饭碗要丢?别慌,这是进阶的号角!</a> <span class="text-muted">清水白石008</span> <a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E8%81%8C%E4%B8%9A%E7%94%9F%E6%B6%AF/1.htm">职业生涯</a><a class="tag" taget="_blank" href="/search/%E6%8F%90%E5%8D%87%E5%AD%A6%E4%B9%A0/1.htm">提升学习</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a><a class="tag" taget="_blank" href="/search/%E8%87%AA%E7%84%B6%E8%AF%AD%E8%A8%80%E5%A4%84%E7%90%86/1.htm">自然语言处理</a> <div>DeepSeek爆火:初级程序员的饭碗要丢?别慌,这是进阶的号角!前言最近,一款名为DeepSeek的AI编程工具火遍了程序员圈。其强大的代码生成能力、智能的代码理解,让不少初级程序员感到一丝焦虑:AI都这么厉害了,我们这些写基础代码的,饭碗还能保得住吗?作为一名在程序软件领域摸爬滚打多年的老兵,我深知技术变革带来的冲击,也理解初级程序员们心中的担忧。但我想说的是,DeepSeek的爆火,非但不是</div> </li> <li><a href="/article/1892357436568825856.htm" title="一人能顶一个公司:AI编程神器Trae诞生了!" target="_blank">一人能顶一个公司:AI编程神器Trae诞生了!</a> <span class="text-muted">AI生成曾小健</span> <a class="tag" taget="_blank" href="/search/AI%E7%BC%96%E7%A8%8B/1.htm">AI编程</a><a class="tag" taget="_blank" href="/search/%E7%A7%91%E6%8A%80/1.htm">科技</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a> <div>一人能顶一个公司:AI编程神器Trae诞生了!原创李至安夕小瑶科技说2025年01月20日23:20北京2024年开始,AI编程工具在国外卷疯了——Cursor、Copilot、Windsurf、Devin、Bolt.new等一系列AI编程神器经常刷屏程序员圈。可惜,普遍对中文开发者不太友好,我把他们装好后,第一件事儿就是先折腾下汉化。而且时不时因为未知原因就被封号了。终于今天,字节跳动洞察到了这</div> </li> <li><a href="/article/1892354539160399872.htm" title="【ISO 14229-1:2023 UDS诊断(ECU复位0x11服务)测试用例CAPL代码全解析⑧】" target="_blank">【ISO 14229-1:2023 UDS诊断(ECU复位0x11服务)测试用例CAPL代码全解析⑧】</a> <span class="text-muted">车端域控测试工程师</span> <a class="tag" taget="_blank" href="/search/%E6%B5%8B%E8%AF%95%E7%94%A8%E4%BE%8B/1.htm">测试用例</a><a class="tag" taget="_blank" href="/search/%E6%B1%BD%E8%BD%A6/1.htm">汽车</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E7%BB%8F%E9%AA%8C%E5%88%86%E4%BA%AB/1.htm">经验分享</a><a class="tag" taget="_blank" href="/search/CANoe/1.htm">CANoe</a><a class="tag" taget="_blank" href="/search/CAPL/1.htm">CAPL</a> <div>ISO14229-1:2023UDS诊断【ECU复位0x11服务】_TestCase08作者:车端域控测试工程师更新日期:2025年02月17日关键词:UDS诊断协议、ECU复位服务、0x11服务、ISO14229-1:2023TC11-008测试用例用例ID测试场景验证要点参考条款预期结果TC11-008多复位请求冲突处理连续发送3次复位请求§8.4.1仅首次请求生效,后续返回NRC=0x78以</div> </li> <li><a href="/article/1892351386956394496.htm" title="Whoosh:一款优秀的纯Python全文搜索库" target="_blank">Whoosh:一款优秀的纯Python全文搜索库</a> <span class="text-muted">沈书苹Peter</span> <div>Whoosh:一款优秀的纯Python全文搜索库whooshPure-Pythonfull-textsearchlibrary项目地址:https://gitcode.com/gh_mirrors/who/whooshWhoosh是一个快速、功能丰富的全文索引和搜索库,完全使用Python编写。它允许程序员轻松地将搜索功能添加到他们的应用程序和网站中。项目基础介绍Whoosh是一个纯Python项</div> </li> <li><a href="/article/1892349116927766528.htm" title="Selenium使用指南" target="_blank">Selenium使用指南</a> <span class="text-muted">程序员杰哥</span> <a class="tag" taget="_blank" href="/search/selenium/1.htm">selenium</a><a class="tag" taget="_blank" href="/search/%E6%B5%8B%E8%AF%95%E5%B7%A5%E5%85%B7/1.htm">测试工具</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E6%B5%8B%E8%AF%95%E7%94%A8%E4%BE%8B/1.htm">测试用例</a><a class="tag" taget="_blank" href="/search/%E8%81%8C%E5%9C%BA%E5%92%8C%E5%8F%91%E5%B1%95/1.htm">职场和发展</a><a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E4%BA%BA%E7%94%9F/1.htm">程序人生</a><a class="tag" taget="_blank" href="/search/%E5%8A%9F%E8%83%BD%E6%B5%8B%E8%AF%95/1.htm">功能测试</a> <div>概述selenium是网页应用中最流行的自动化测试工具,可以用来做自动化测试或者浏览器爬虫等。官网地址为:相对于另外一款web自动化测试工具QTP来说有如下优点:免费开源轻量级,不同语言只需要一个体积很小的依赖包支持多种系统,包括Windows,Mac,Linux支持多种浏览器,包括Chrome,FireFox,IE,safari,opera等支持多语言,包括Java,C,python,c#等主流</div> </li> <li><a href="/article/1892344959785299968.htm" title="百度极速版APP 自动脚本 javascript代码" target="_blank">百度极速版APP 自动脚本 javascript代码</a> <span class="text-muted">zaxjb123</span> <a class="tag" taget="_blank" href="/search/dubbo/1.htm">dubbo</a> <div>使用JavaScript编写针对百度极速版APP的自动化脚本通常涉及到使用WebView测试框架,比如Puppeteer或Selenium,这些工具允许你控制一个浏览器或WebView环境,从而与网页或APP中的Web内容进行交互。然而,对于原生APP(如百度极速版)的自动化测试,通常需要使用专门的移动应用自动化框架,如Appium。Appium支持多种编程语言,包括JavaScript。要使用J</div> </li> <li><a href="/article/1892341428651094016.htm" title="教程分享:手机应用自动化" target="_blank">教程分享:手机应用自动化</a> <span class="text-muted">QH_ShareHub</span> <a class="tag" taget="_blank" href="/search/%E8%87%AA%E5%8A%A8%E5%8C%96/1.htm">自动化</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a> <div>手机应用程序的自动化通常涉及使用专门设计的自动化框架和工具。对于Android和iOS平台,以下是一些常用的自动化工具:Android:Espresso:Espresso是谷歌官方支持的自动化测试框架。它适用于写UI测试来模拟用户对Android应用的交云。Espresso工作在应用程序的内存中,因此能够快速执行。UIAutomator:这个框架允许测试者创建自动化脚本来检测和操作用户界面元素。它</div> </li> <li><a href="/article/1892295768899907584.htm" title="Vulkan 究竟是什么" target="_blank">Vulkan 究竟是什么</a> <span class="text-muted">美颜特效.音视频</span> <a class="tag" taget="_blank" href="/search/Vulkan/1.htm">Vulkan</a><a class="tag" taget="_blank" href="/search/%E5%9F%BA%E7%A1%80/1.htm">基础</a> <div>Vulkan图形系统究竟是什么?Vulkan是一个图形和计算硬件的API(ApplicationProgrammingInterface)。这个API由很多命令组成,它们允许程序员指定着色器程序,计算内核,对象和操作产生高质量的图像,特别是三维对象的彩色图像。程序员的视角看Vulkan:对程序员来讲,Vulkan是一些命令的集合,允许内核或者着色器,和shader执行的外部Vulkanaspect</div> </li> <li><a href="/article/1892200673034956800.htm" title="常用Linux命令" target="_blank">常用Linux命令</a> <span class="text-muted">xl.liu</span> <a class="tag" taget="_blank" href="/search/Linux/1.htm">Linux</a><a class="tag" taget="_blank" href="/search/Linux%E5%91%BD%E4%BB%A4/1.htm">Linux命令</a> <div>常用Linux命令的基本使用目标理解学习Linux终端命令的原因常用Linux命令体验01.学习Linux终端命令的原因Linux刚面世时并没有图形界面,所有的操作全靠命令完成,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等在职场中,大量的服务器维护工作都是在远程通过SSH客户端来完成的,并没有图形界面,所有的维护工作都需要通过命令来完成在职场中,作为后端程序员,必须要或多或少的掌握一些</div> </li> <li><a href="/article/1892181506210721792.htm" title="瑞_23种设计模式_中介者模式" target="_blank">瑞_23种设计模式_中介者模式</a> <span class="text-muted">瑞486</span> <a class="tag" taget="_blank" href="/search/23%E7%A7%8D%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">23种设计模式</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a><a class="tag" taget="_blank" href="/search/%E4%B8%AD%E4%BB%8B%E8%80%85%E6%A8%A1%E5%BC%8F/1.htm">中介者模式</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>文章目录1中介者模式(MediatorPattern)1.1介绍1.2概述1.3中介者模式的结构1.4中介者模式的优缺点1.5中介者模式的使用场景2案例一2.1需求2.2代码实现3案例二3.1需求3.2代码实现前言:本文章为瑞_系列专栏之《23种设计模式》的中介者模式篇。本文中的部分图和概念等资料,来源于博主学习设计模式的相关网站《菜鸟教程|设计模式》和《黑马程序员Java设计模式详解》,特此注明</div> </li> <li><a href="/article/1892178363670392832.htm" title="程序员如何避免出纰漏?" target="_blank">程序员如何避免出纰漏?</a> <span class="text-muted"></span> <a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%91%98/1.htm">程序员</a> <div>这两天我们开发团队不知道咋的,跟包饺子下锅似的接连出了不少纰漏,有的大有的小,其实开发能力都可以,不是那种能力差导致的问题,我从外部观察,总结了一些出纰漏的原因和解决方案。先说一下有啥纰漏。小程序代码分包的时候,影响到线上正在使用的业务,损失了大概1晚上的流量。上了身份证、人脸认证功能,测试回归的时候,测了不需要实名和人脸的场景,没测只需要身份证的场景,结果线上跑的时候用这个场景,导致功能也出了问</div> </li> <li><a href="/article/1892156160874704896.htm" title="使用AI自动写代码,DeepSeek+CLine+VSCode实战教程,主打一个便宜实惠用得起!" target="_blank">使用AI自动写代码,DeepSeek+CLine+VSCode实战教程,主打一个便宜实惠用得起!</a> <span class="text-muted">AI程序猿人</span> <a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/AI%E7%BC%96%E7%A8%8B/1.htm">AI编程</a><a class="tag" taget="_blank" href="/search/vscode/1.htm">vscode</a><a class="tag" taget="_blank" href="/search/DeepSeek/1.htm">DeepSeek</a><a class="tag" taget="_blank" href="/search/AI/1.htm">AI</a><a class="tag" taget="_blank" href="/search/AI%E5%A4%A7%E6%A8%A1%E5%9E%8B/1.htm">AI大模型</a><a class="tag" taget="_blank" href="/search/Dify/1.htm">Dify</a> <div>0前言最近DeepSeek火了起来,各个媒体都在宣传,那DeekSeek到底是个啥?从程序员角度来看:DeepSeek一个人工智能助手,可以帮助我们解决代码知识点疑问,以及某个晦涩难懂的知识点问题,处理生活中的一些文本信息问题等。其实这些能力早在数年前ChatGPT也已经具备了,那么为什么最近DeepSeek这么火呢?一个原因就是因为它是国产的,那必须得支持。还有一个原因就是它实惠呀,便宜!目测目</div> </li> <li><a href="/article/1892119463663300608.htm" title="DeepSeek 横空出世:程序员的机遇与挑战" target="_blank">DeepSeek 横空出世:程序员的机遇与挑战</a> <span class="text-muted">程序员WANG</span> <a class="tag" taget="_blank" href="/search/%E5%B7%A5%E5%85%B7/1.htm">工具</a><a class="tag" taget="_blank" href="/search/deepseek/1.htm">deepseek</a><a class="tag" taget="_blank" href="/search/AI/1.htm">AI</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E6%B1%82%E7%B4%A2/1.htm">深度求索</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E7%99%BE%E5%BA%A6/1.htm">百度</a> <div>摘要本文聚焦于DeepSeek横空出世后对程序员群体产生的多方面影响。通过深入分析技术工具民主化、行业需求变迁、能力评价体系重构等方面,揭示DeepSeek带来的冲击与变革,同时为程序员在这一新时代背景下的职业发展提供策略建议,旨在帮助程序员更好地适应技术变革,实现职业价值的升级。一、引言在科技飞速发展的当下,人工智能领域不断涌现新的突破。DeepSeek作为国产大模型的代表,其爆火引发了广泛关注</div> </li> <li><a href="/article/1892110887951593472.htm" title="Java程序员面临抉择:激烈竞争下,转行大模型或是新出路,非常详细收藏我这一篇就够了!" target="_blank">Java程序员面临抉择:激烈竞争下,转行大模型或是新出路,非常详细收藏我这一篇就够了!</a> <span class="text-muted">大模型教程</span> <a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%A8%A1%E5%9E%8B%E5%AD%A6%E4%B9%A0/1.htm">大模型学习</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%A8%A1%E5%9E%8B/1.htm">大模型</a><a class="tag" taget="_blank" href="/search/%E8%AF%AD%E8%A8%80%E6%A8%A1%E5%9E%8B/1.htm">语言模型</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%91%98/1.htm">程序员</a><a class="tag" taget="_blank" href="/search/%E8%BD%AC%E8%A1%8C/1.htm">转行</a> <div>Java程序员转行大模型领域,可以依据以下详细路线进行学习和职业转换:第1阶段:基础知识巩固数学基础:线性代数:矩阵运算、向量空间等。概率论与统计:概率分布、统计推断等。微积分:导数、积分、多变量函数等。Python编程:Python基础:数据类型、控制结构、函数等。Python进阶:面向对象编程、装饰器、生成器等。数据处理:NumPy、Pandas、Matplotlib。第2阶段:机器学习与深度</div> </li> <li><a href="/article/1892098260819046400.htm" title="读书笔记 - 代码整洁之道:程序员的职业素养" target="_blank">读书笔记 - 代码整洁之道:程序员的职业素养</a> <span class="text-muted">天罚神</span> <a class="tag" taget="_blank" href="/search/%E8%AF%BB%E4%B9%A6%E7%AC%94%E8%AE%B0/1.htm">读书笔记</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>读书笔记-代码整洁之道:程序员的职业素养第1章职业道德了解你的领域,每个专业软件开发人员必须精通的事项坚持学习练习辅导第2章说“不”对抗角色高风险时刻要有团队精神试试看消极对抗说"是"的成本如何写出好代码第3章说“是”承诺用语承诺识别缺乏承诺的征兆坚守原则第4章编码不要在疲劳的时候写代码不要在焦虑的时候写代码理性应对中断如何应对阻塞状态关于调试保持好节奏进度延迟加班帮助帮助他人接受他人的帮助辅导定</div> </li> <li><a href="/article/1892093846309892096.htm" title="《DeepSeek知识库》手册,DeepSeek入门教程,看这一篇就够了!" target="_blank">《DeepSeek知识库》手册,DeepSeek入门教程,看这一篇就够了!</a> <span class="text-muted">大模型产品经理</span> <a class="tag" taget="_blank" href="/search/transformer/1.htm">transformer</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AE/1.htm">大数据</a><a class="tag" taget="_blank" href="/search/chatgpt/1.htm">chatgpt</a><a class="tag" taget="_blank" href="/search/%E5%88%86%E7%B1%BB/1.htm">分类</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E6%8C%96%E6%8E%98/1.htm">数据挖掘</a> <div>从今年春节到现在,国产大模型DeepSeek彻底火了!无论是科技大厂的技术分享,还是创业团队的创新应用,DeepSeek都成为了高频关键词。它凭借强大的功能和易用性,正在改变我们处理信息、解决问题的方式。现在,掌握DeepSeek已经不仅仅是程序员的专利,而是每一个想要提升效率、创造价值的职场人必备的技能!然而,面对网络上铺天盖地的资料,很多人却陷入了迷茫:网上这么多教程,哪些才是真正有用的?如何</div> </li> <li><a href="/article/1892054241107832832.htm" title="【Java】—— 包装类&泛型" target="_blank">【Java】—— 包装类&泛型</a> <span class="text-muted">两袖清风998</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E4%B8%8E%E7%AE%97%E6%B3%95/1.htm">数据结构与算法</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>一、包装类(WrapperClass)1、包装类的定义在Java中数据分为两大类:基础数据类型(内置数据类型)引用类型其中基础数据类型(byteintlongdoublebooleanchar......)和C语言接近是早期为了吸引C语言的程序员。后续Java有引入了一系列更进阶的语法机制,而这些机制又依赖于引用类型。Java希望把所有的类型统一成Object体系,让基础数据类型也可以使用equa</div> </li> <li><a href="/article/1892050712859308032.htm" title="java 代码走查_代码走查如何保证软件质量" target="_blank">java 代码走查_代码走查如何保证软件质量</a> <span class="text-muted">weixin_40006965</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E4%BB%A3%E7%A0%81%E8%B5%B0%E6%9F%A5/1.htm">代码走查</a> <div>目的代码走查的好处非常多,第一个是让新同学快速熟悉代码并了解系统。第二个是做资损防控的事前检查,在事前规避引发线上故障。第三个是通过一起讨论和审查,加强团队代码阅读和编写能力,让大家编写出优秀的代码。代码走查的优点非常多,但是最核心的还是希望通过代码走查提前发现问题并解决问题。所以基于以上目的,代码走查不是为了找到代码写的差的程序员加以批评,不是为了找到差的代码,而是一起发现问题共同成长,所以对于</div> </li> <li><a href="/article/1892046917303595008.htm" title="SQLite之父当年也不知道什么是覆盖索引" target="_blank">SQLite之父当年也不知道什么是覆盖索引</a> <span class="text-muted"></span> <div>今天,对于大多数程序员,尤其是那些每天都在处理CRUD操作的小伙伴来说,覆盖索引(CoveringIndex)简直就是面试题中最基础的存在了,早就成了那种“烂大街”的题目,甚至连应届生都能轻松背出来那是什么。不过,说实话,在实际开发中,能用到几次呢?写一个SELECT*...,马上就“失效”了吧~但你知道吗?当年,就连SQLite的作者D.RichardHipp也对这个概念一无所知!你没听错,作为</div> </li> <li><a href="/article/1892042512562974720.htm" title="Mybatis-Plus学习笔记(自用)" target="_blank">Mybatis-Plus学习笔记(自用)</a> <span class="text-muted">Zzzchc</span> <a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%EF%BC%88%E8%87%AA%E7%94%A8%EF%BC%89/1.htm">学习笔记(自用)</a><a class="tag" taget="_blank" href="/search/mybatis/1.htm">mybatis</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>Mybatis-Plus学习笔记(自用)本文根据黑马程序员的课程资料与百度搜索的资料共同整理所得,仅用于学习使用,如有侵权,请联系删除文章目录Mybatis-Plus学习笔记(自用)1.纯Mybatis与Mybatis-Plus整合2.Spring+Mybatis+MP3.SpringBoot+Mybatis+MP4.通用CRUD详解4.1注解详解4.2增删改查操作4.3SQL注入原理5.配置5.</div> </li> <li><a href="/article/1892019317860528128.htm" title="【ISO 14229-1:2023 UDS诊断(ECU复位0x11服务)测试用例CAPL代码全解析⑮】" target="_blank">【ISO 14229-1:2023 UDS诊断(ECU复位0x11服务)测试用例CAPL代码全解析⑮】</a> <span class="text-muted">车端域控测试工程师</span> <a class="tag" taget="_blank" href="/search/%E6%B5%8B%E8%AF%95%E7%94%A8%E4%BE%8B/1.htm">测试用例</a><a class="tag" taget="_blank" href="/search/%E6%B1%BD%E8%BD%A6/1.htm">汽车</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E7%BB%8F%E9%AA%8C%E5%88%86%E4%BA%AB/1.htm">经验分享</a><a class="tag" taget="_blank" href="/search/CANoe/1.htm">CANoe</a> <div>ISO14229-1:2023UDS诊断【ECU复位0x11服务】_TestCase15作者:车端域控测试工程师更新日期:2025年02月18日关键词:UDS诊断协议、ECU复位服务、0x11服务、ISO14229-1:2023TC11-015测试用例用例ID测试场景验证要点参考条款预期结果TC11-015复位与编程会话联动在编程会话中执行硬件复位§8.3.3复位后自动退出编程会话以下是为TC11</div> </li> <li><a href="/article/1891933698761224192.htm" title="Postman接口测试工具详解" target="_blank">Postman接口测试工具详解</a> <span class="text-muted">洛秋_</span> <a class="tag" taget="_blank" href="/search/%E8%BD%AF%E4%BB%B6%E6%B5%8B%E8%AF%95/1.htm">软件测试</a><a class="tag" taget="_blank" href="/search/postman/1.htm">postman</a> <div>文章目录Postman接口测试工具详解一、Postman简介二、安装与配置1.安装Postman2.配置Postman三、创建和管理请求1.创建请求2.配置请求3.添加请求参数四、发送请求与查看响应1.发送请求2.查看响应五、使用环境变量1.创建环境变量2.使用环境变量3.切换环境六、测试脚本和断言1.编写测试脚本2.使用Chai断言库七、集合与运行集合1.创建集合2.运行集合3.使用数据驱动测试</div> </li> <li><a href="/article/1891904166893252608.htm" title="开发工具篇第二讲:git使用技巧 从基础到进阶(快速入门/高阶用法/git别名/项目实战/gitLab)" target="_blank">开发工具篇第二讲:git使用技巧 从基础到进阶(快速入门/高阶用法/git别名/项目实战/gitLab)</a> <span class="text-muted">程序员 jet_qi</span> <a class="tag" taget="_blank" href="/search/%E5%B8%B8%E7%94%A8%E5%BC%80%E5%8F%91%E5%B7%A5%E5%85%B7/1.htm">常用开发工具</a><a class="tag" taget="_blank" href="/search/git/1.htm">git</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/rebase/1.htm">rebase</a><a class="tag" taget="_blank" href="/search/cherry-pick/1.htm">cherry-pick</a> <div>git是一个开源的分布式版本控制系统,可以有效高速地处理从很小到非常大的项目版本管理。它是LinusTorvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件,git作为版本管理工具,程序员是必须要掌握的。本文是开发工具篇第二讲:主要介绍了git的常规使用方法及在日常开发实战场景中git的应用。文章目录1、认识git2、git原理2.1、git与其他版本管理系统的主要区别2.</div> </li> <li><a href="/article/1891901898668175360.htm" title="为一位经验丰富的程序员量身定制Python学习路线 人工智能首选语言:python Python新技术" target="_blank">为一位经验丰富的程序员量身定制Python学习路线 人工智能首选语言:python Python新技术</a> <span class="text-muted">小黄人软件</span> <a class="tag" taget="_blank" href="/search/chatGPT/1.htm">chatGPT</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a> <div>人工智能首选语言:python必学。解释型语言(无编译这个环节),直接执行代码,面向对象,脚本语言没基础在这里学为一位经验丰富的程序员量身定制Python学习路线,主要应关注于深化已有的编程知识和技能,并探索Python特有的高级特性。以下是推荐的学习路线:基础复习:如果对Python基础不熟悉,先从Python的基础语法、数据类型、控制流程等开始复习。高级语言特性:深入理解装饰器、上下文管理器、</div> </li> <li><a href="/article/8.htm" title="LeetCode[Math] - #66 Plus One" target="_blank">LeetCode[Math] - #66 Plus One</a> <span class="text-muted">Cwind</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/LeetCode/1.htm">LeetCode</a><a class="tag" taget="_blank" href="/search/%E9%A2%98%E8%A7%A3/1.htm">题解</a><a class="tag" taget="_blank" href="/search/Algorithm/1.htm">Algorithm</a><a class="tag" taget="_blank" href="/search/Math/1.htm">Math</a> <div>原题链接:#66 Plus One   要求: 给定一个用数字数组表示的非负整数,如num1 = {1, 2, 3, 9}, num2 = {9, 9}等,给这个数加上1。 注意: 1. 数字的较高位存在数组的头上,即num1表示数字1239 2. 每一位(数组中的每个元素)的取值范围为0~9   难度:简单   分析: 题目比较简单,只须从数组</div> </li> <li><a href="/article/135.htm" title="JQuery中$.ajax()方法参数详解" target="_blank">JQuery中$.ajax()方法参数详解</a> <span class="text-muted">AILIKES</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/jsonp/1.htm">jsonp</a><a class="tag" taget="_blank" href="/search/jquery/1.htm">jquery</a><a class="tag" taget="_blank" href="/search/Ajax/1.htm">Ajax</a><a class="tag" taget="_blank" href="/search/json/1.htm">json</a> <div>url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址。 type: 要求为String类型的参数,请求方式(post或get)默认为get。注意其他http请求方法,例如put和    delete也可以使用,但仅部分浏览器支持。 timeout: 要求为Number类型的参数,设置请求超时时间(毫秒)。此设置将覆盖$.ajaxSetup()方法的全局</div> </li> <li><a href="/article/262.htm" title="JConsole & JVisualVM远程监视Webphere服务器JVM" target="_blank">JConsole & JVisualVM远程监视Webphere服务器JVM</a> <span class="text-muted">Kai_Ge</span> <a class="tag" taget="_blank" href="/search/JVisualVM/1.htm">JVisualVM</a><a class="tag" taget="_blank" href="/search/JConsole/1.htm">JConsole</a><a class="tag" taget="_blank" href="/search/Webphere/1.htm">Webphere</a> <div>    JConsole是JDK里自带的一个工具,可以监测Java程序运行时所有对象的申请、释放等动作,将内存管理的所有信息进行统计、分析、可视化。我们可以根据这些信息判断程序是否有内存泄漏问题。   使用JConsole工具来分析WAS的JVM问题,需要进行相关的配置。   首先我们看WAS服务器端的配置.   1、登录was控制台https://10.4.119.18</div> </li> <li><a href="/article/389.htm" title="自定义annotation" target="_blank">自定义annotation</a> <span class="text-muted">120153216</span> <a class="tag" taget="_blank" href="/search/annotation/1.htm">annotation</a> <div>Java annotation 自定义注释@interface的用法 一、什么是注释      说起注释,得先提一提什么是元数据(metadata)。所谓元数据就是数据的数据。也就是说,元数据是描述数据的。就象数据表中的字段一样,每个字段描述了这个字段下的数据的含义。而J2SE5.0中提供的注释就是java源代码的元数据,也就是说注释是描述java源</div> </li> <li><a href="/article/516.htm" title="CentOS 5/6.X 使用 EPEL YUM源" target="_blank">CentOS 5/6.X 使用 EPEL YUM源</a> <span class="text-muted">2002wmj</span> <a class="tag" taget="_blank" href="/search/centos/1.htm">centos</a> <div>CentOS 6.X 安装使用EPEL YUM源1. 查看操作系统版本[root@node1 ~]# uname -a Linux node1.test.com 2.6.32-358.el6.x86_64 #1 SMP Fri Feb 22 00:31:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux [root@node1 ~]#</div> </li> <li><a href="/article/643.htm" title="在SQLSERVER中查找缺失和无用的索引SQL" target="_blank">在SQLSERVER中查找缺失和无用的索引SQL</a> <span class="text-muted">357029540</span> <a class="tag" taget="_blank" href="/search/SQL+Server/1.htm">SQL Server</a> <div>--缺失的索引 SELECT  avg_total_user_cost * avg_user_impact * ( user_scans + user_seeks ) AS PossibleImprovement ,          last_user_seek ,    </div> </li> <li><a href="/article/770.htm" title="Spring3 MVC 笔记(二) —json+rest优化" target="_blank">Spring3 MVC 笔记(二) —json+rest优化</a> <span class="text-muted">7454103</span> <a class="tag" taget="_blank" href="/search/Spring3+MVC/1.htm">Spring3 MVC</a> <div>接上次的 spring mvc 注解的一些详细信息!                          其实也是一些个人的学习笔记  呵呵! </div> </li> <li><a href="/article/897.htm" title="替换“\”的时候报错Unexpected internal error near index 1 \ ^" target="_blank">替换“\”的时候报错Unexpected internal error near index 1 \ ^</a> <span class="text-muted">adminjun</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E2%80%9C%5C%E6%9B%BF%E6%8D%A2%E2%80%9D/1.htm">“\替换”</a> <div>发现还是有些东西没有刻子脑子里,,过段时间就没什么概念了,所以贴出来...以免再忘...   在拆分字符串时遇到通过 \ 来拆分,可是用所以想通过转义 \\ 来拆分的时候会报异常   public class Main {          /*</div> </li> <li><a href="/article/1024.htm" title="POJ 1035 Spell checker(哈希表)" target="_blank">POJ 1035 Spell checker(哈希表)</a> <span class="text-muted">aijuans</span> <a class="tag" taget="_blank" href="/search/%E6%9A%B4%E5%8A%9B%E6%B1%82%E8%A7%A3--%E5%93%88%E5%B8%8C%E8%A1%A8/1.htm">暴力求解--哈希表</a> <div>/* 题意:输入字典,然后输入单词,判断字典中是否出现过该单词,或者是否进行删除、添加、替换操作,如果是,则输出对应的字典中的单词 要求按照输入时候的排名输出 题解:建立两个哈希表。一个存储字典和输入字典中单词的排名,一个进行最后输出的判重 */ #include <iostream> //#define using namespace std; const int HASH =</div> </li> <li><a href="/article/1151.htm" title="通过原型实现javascript Array的去重、最大值和最小值" target="_blank">通过原型实现javascript Array的去重、最大值和最小值</a> <span class="text-muted">ayaoxinchao</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/array/1.htm">array</a><a class="tag" taget="_blank" href="/search/prototype/1.htm">prototype</a> <div>用原型函数(prototype)可以定义一些很方便的自定义函数,实现各种自定义功能。本次主要是实现了Array的去重、获取最大值和最小值。 实现代码如下:   <script type="text/javascript"> Array.prototype.unique = function() { var a = {}; var le</div> </li> <li><a href="/article/1278.htm" title="UIWebView实现https双向认证请求" target="_blank">UIWebView实现https双向认证请求</a> <span class="text-muted">bewithme</span> <a class="tag" taget="_blank" href="/search/UIWebView/1.htm">UIWebView</a><a class="tag" taget="_blank" href="/search/https/1.htm">https</a><a class="tag" taget="_blank" href="/search/Objective-C/1.htm">Objective-C</a> <div>          什么是HTTPS双向认证我已在先前的博文 ASIHTTPRequest实现https双向认证请求 中有讲述,不理解的读者可以先复习一下。本文是用UIWebView来实现对需要客户端证书验证的服务请求,网上有些文章中有涉及到此内容,但都只言片语,没有讲完全,更没有完整的代码,让人困扰不已。但是此知</div> </li> <li><a href="/article/1405.htm" title="NoSQL数据库之Redis数据库管理(Redis高级应用之事务处理、持久化操作、pub_sub、虚拟内存)" target="_blank">NoSQL数据库之Redis数据库管理(Redis高级应用之事务处理、持久化操作、pub_sub、虚拟内存)</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/redis/1.htm">redis</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/NoSQL/1.htm">NoSQL</a> <div>3.事务处理         Redis对事务的支持目前不比较简单。Redis只能保证一个client发起的事务中的命令可以连续的执行,而中间不会插入其他client的命令。当一个client在一个连接中发出multi命令时,这个连接会进入一个事务上下文,该连接后续的命令不会立即执行,而是先放到一个队列中,当执行exec命令时,redis会顺序的执行队列中</div> </li> <li><a href="/article/1532.htm" title="各数据库分页sql备忘" target="_blank">各数据库分页sql备忘</a> <span class="text-muted">bingyingao</span> <a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/%E5%88%86%E9%A1%B5/1.htm">分页</a> <div>ORACLE 下面这个效率很低 SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (SELECT * FROM IPAY_RCD_FS_RETURN order by id desc) A ) WHERE RN <20; 下面这个效率很高 SELECT A.*, ROWNUM RN FROM (SELECT * FROM IPAY_RCD_</div> </li> <li><a href="/article/1659.htm" title="【Scala七】Scala核心一:函数" target="_blank">【Scala七】Scala核心一:函数</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/scala/1.htm">scala</a> <div>1. 如果函数体只有一行代码,则可以不用写{},比如 def print(x: Int) = println(x) 一行上的多条语句用分号隔开,则只有第一句属于方法体,例如   def printWithValue(x: Int) : String= println(x); "ABC"   上面的代码报错,因为,printWithValue的方法</div> </li> <li><a href="/article/1786.htm" title="了解GHC的factorial编译过程" target="_blank">了解GHC的factorial编译过程</a> <span class="text-muted">bookjovi</span> <a class="tag" taget="_blank" href="/search/haskell/1.htm">haskell</a> <div>GHC相对其他主流语言的编译器或解释器还是比较复杂的,一部分原因是haskell本身的设计就不易于实现compiler,如lazy特性,static typed,类型推导等。 关于GHC的内部实现有篇文章说的挺好,这里,文中在RTS一节中详细说了haskell的concurrent实现,里面提到了green thread,如果熟悉Go语言的话就会发现,ghc的concurrent实现和Go有点类</div> </li> <li><a href="/article/1913.htm" title="Java-Collections Framework学习与总结-LinkedHashMap" target="_blank">Java-Collections Framework学习与总结-LinkedHashMap</a> <span class="text-muted">BrokenDreams</span> <a class="tag" taget="_blank" href="/search/LinkedHashMap/1.htm">LinkedHashMap</a> <div>        前面总结了java.util.HashMap,了解了其内部由散列表实现,每个桶内是一个单向链表。那有没有双向链表的实现呢?双向链表的实现会具备什么特性呢?来看一下HashMap的一个子类——java.util.LinkedHashMap。       </div> </li> <li><a href="/article/2040.htm" title="读《研磨设计模式》-代码笔记-抽象工厂模式-Abstract Factory" target="_blank">读《研磨设计模式》-代码笔记-抽象工厂模式-Abstract Factory</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/abstract/1.htm">abstract</a> <div>声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/ package design.pattern; /* * Abstract Factory Pattern * 抽象工厂模式的目的是: * 通过在抽象工厂里面定义一组产品接口,方便地切换“产品簇” * 这些接口是相关或者相依赖的</div> </li> <li><a href="/article/2167.htm" title="压暗面部高光" target="_blank">压暗面部高光</a> <span class="text-muted">cherishLC</span> <a class="tag" taget="_blank" href="/search/PS/1.htm">PS</a> <div>方法一、压暗高光&重新着色 当皮肤很油又使用闪光灯时,很容易在面部形成高光区域。 下面讲一下我今天处理高光区域的心得: 皮肤可以分为纹理和色彩两个属性。其中纹理主要由亮度通道(Lab模式的L通道)决定,色彩则由a、b通道确定。 处理思路为在保持高光区域纹理的情况下,对高光区域着色。具体步骤为:降低高光区域的整体的亮度,再进行着色。 如果想简化步骤,可以只进行着色(参看下面的步骤1</div> </li> <li><a href="/article/2294.htm" title="Java VisualVM监控远程JVM" target="_blank">Java VisualVM监控远程JVM</a> <span class="text-muted">crabdave</span> <a class="tag" taget="_blank" href="/search/visualvm/1.htm">visualvm</a> <div>Java VisualVM监控远程JVM    JDK1.6开始自带的VisualVM就是不错的监控工具. 这个工具就在JAVA_HOME\bin\目录下的jvisualvm.exe, 双击这个文件就能看到界面   通过JMX连接远程机器, 需要经过下面的配置: 1. 修改远程机器JDK配置文件 (我这里远程机器是linux).    </div> </li> <li><a href="/article/2421.htm" title="Saiku去掉登录模块" target="_blank">Saiku去掉登录模块</a> <span class="text-muted">daizj</span> <a class="tag" taget="_blank" href="/search/saiku/1.htm">saiku</a><a class="tag" taget="_blank" href="/search/%E7%99%BB%E5%BD%95/1.htm">登录</a><a class="tag" taget="_blank" href="/search/olap/1.htm">olap</a><a class="tag" taget="_blank" href="/search/BI/1.htm">BI</a> <div> 1、修改applicationContext-saiku-webapp.xml <security:intercept-url pattern="/rest/**" access="IS_AUTHENTICATED_ANONYMOUSLY" />  <security:intercept-url pattern=&qu</div> </li> <li><a href="/article/2548.htm" title="浅析 Flex中的Focus" target="_blank">浅析 Flex中的Focus</a> <span class="text-muted">dsjt</span> <a class="tag" taget="_blank" href="/search/html/1.htm">html</a><a class="tag" taget="_blank" href="/search/Flex/1.htm">Flex</a><a class="tag" taget="_blank" href="/search/Flash/1.htm">Flash</a> <div>关键字:focus、 setFocus、 IFocusManager、KeyboardEvent 焦点、设置焦点、获得焦点、键盘事件 一、无焦点的困扰——组件监听不到键盘事件 原因:只有获得焦点的组件(确切说是InteractiveObject)才能监听到键盘事件的目标阶段;键盘事件(flash.events.KeyboardEvent)参与冒泡阶段,所以焦点组件的父项(以及它爸</div> </li> <li><a href="/article/2675.htm" title="Yii全局函数使用" target="_blank">Yii全局函数使用</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/yii/1.htm">yii</a> <div>由于YII致力于完美的整合第三方库,它并没有定义任何全局函数。yii中的每一个应用都需要全类别和对象范围。例如,Yii::app()->user;Yii::app()->params['name'];等等。我们可以自行设定全局函数,使得代码看起来更加简洁易用。(原文地址) 我们可以保存在globals.php在protected目录下。然后,在入口脚本index.php的,我们包括在</div> </li> <li><a href="/article/2802.htm" title="设计模式之单例模式二(解决无序写入的问题)" target="_blank">设计模式之单例模式二(解决无序写入的问题)</a> <span class="text-muted">come_for_dream</span> <a class="tag" taget="_blank" href="/search/%E5%8D%95%E4%BE%8B%E6%A8%A1%E5%BC%8F/1.htm">单例模式</a><a class="tag" taget="_blank" href="/search/volatile/1.htm">volatile</a><a class="tag" taget="_blank" href="/search/%E4%B9%B1%E5%BA%8F%E6%89%A7%E8%A1%8C/1.htm">乱序执行</a><a class="tag" taget="_blank" href="/search/%E5%8F%8C%E9%87%8D%E6%A3%80%E9%AA%8C%E9%94%81/1.htm">双重检验锁</a> <div>                在上篇文章中我们使用了双重检验锁的方式避免懒汉式单例模式下由于多线程造成的实例被多次创建的问题,但是因为由于JVM为了使得处理器内部的运算单元能充分利用,处理器可能会对输入代码进行乱序执行(Out Of Order Execute)优化,处理器会在计算之后将乱序执行的结果进行重组,保证该</div> </li> <li><a href="/article/2929.htm" title="程序员从初级到高级的蜕变" target="_blank">程序员从初级到高级的蜕变</a> <span class="text-muted">gcq511120594</span> <a class="tag" taget="_blank" href="/search/%E6%A1%86%E6%9E%B6/1.htm">框架</a><a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C/1.htm">工作</a><a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a> <div>软件开发是一个奇怪的行业,市场远远供不应求。这是一个已经存在多年的问题,而且随着时间的流逝,愈演愈烈。 我们严重缺乏能够满足需求的人才。这个行业相当年轻。大多数软件项目是失败的。几乎所有的项目都会超出预算。我们解决问题的最佳指导方针可以归结为——“用一些通用方法去解决问题,当然这些方法常常不管用,于是,唯一能做的就是不断地尝试,逐个看看是否奏效”。 现在我们把淫浸代码时间超过3年的开发人员称为</div> </li> <li><a href="/article/3056.htm" title="Reverse Linked List" target="_blank">Reverse Linked List</a> <span class="text-muted">hcx2013</span> <a class="tag" taget="_blank" href="/search/list/1.htm">list</a> <div>Reverse a singly linked list.   /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */ p</div> </li> <li><a href="/article/3183.htm" title="Spring4.1新特性——数据库集成测试" target="_blank">Spring4.1新特性——数据库集成测试</a> <span class="text-muted">jinnianshilongnian</span> <a class="tag" taget="_blank" href="/search/spring+4.1/1.htm">spring 4.1</a> <div>目录 Spring4.1新特性——综述 Spring4.1新特性——Spring核心部分及其他 Spring4.1新特性——Spring缓存框架增强 Spring4.1新特性——异步调用和事件机制的异常处理 Spring4.1新特性——数据库集成测试脚本初始化 Spring4.1新特性——Spring MVC增强 Spring4.1新特性——页面自动化测试框架Spring MVC T</div> </li> <li><a href="/article/3310.htm" title="C# Ajax上传图片同时生成微缩图(附Demo)" target="_blank">C# Ajax上传图片同时生成微缩图(附Demo)</a> <span class="text-muted">liyonghui160com</span> <div>    1.Ajax无刷新上传图片,详情请阅我的这篇文章。(jquery + c# ashx)         2.C#位图处理  System.Drawing。         3.最新demo支持IE7,IE8,Fir</div> </li> <li><a href="/article/3437.htm" title="Java list三种遍历方法性能比较" target="_blank">Java list三种遍历方法性能比较</a> <span class="text-muted">pda158</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>从c/c++语言转向java开发,学习java语言list遍历的三种方法,顺便测试各种遍历方法的性能,测试方法为在ArrayList中插入1千万条记录,然后遍历ArrayList,发现了一个奇怪的现象,测试代码例如以下: package com.hisense.tiger.list; import java.util.ArrayList; import java.util.Iterator;</div> </li> <li><a href="/article/3564.htm" title="300个涵盖IT各方面的免费资源(上)——商业与市场篇" target="_blank">300个涵盖IT各方面的免费资源(上)——商业与市场篇</a> <span class="text-muted">shoothao</span> <a class="tag" taget="_blank" href="/search/seo/1.htm">seo</a><a class="tag" taget="_blank" href="/search/%E5%95%86%E4%B8%9A%E4%B8%8E%E5%B8%82%E5%9C%BA/1.htm">商业与市场</a><a class="tag" taget="_blank" href="/search/IT%E8%B5%84%E6%BA%90/1.htm">IT资源</a><a class="tag" taget="_blank" href="/search/%E5%85%8D%E8%B4%B9%E8%B5%84%E6%BA%90/1.htm">免费资源</a> <div> A.网站模板+logo+服务器主机+发票生成 HTML5 UP:响应式的HTML5和CSS3网站模板。 Bootswatch:免费的Bootstrap主题。 Templated:收集了845个免费的CSS和HTML5网站模板。 Wordpress.org|Wordpress.com:可免费创建你的新网站。 Strikingly:关注领域中免费无限的移动优</div> </li> <li><a href="/article/3691.htm" title="localStorage、sessionStorage" target="_blank">localStorage、sessionStorage</a> <span class="text-muted">uule</span> <a class="tag" taget="_blank" href="/search/localStorage/1.htm">localStorage</a> <div>W3School 例子   HTML5 提供了两种在客户端存储数据的新方法: localStorage - 没有时间限制的数据存储 sessionStorage - 针对一个 session 的数据存储   之前,这些都是由 cookie 完成的。但是 cookie 不适合大量数据的存储,因为它们由每个对服务器的请求来传递,这使得 cookie 速度很慢而且效率也不</div> </li> </ul> </div> </div> </div> <div> <div class="container"> <div class="indexes"> <strong>按字母分类:</strong> <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a> </div> </div> </div> <footer id="footer" class="mb30 mt30"> <div class="container"> <div class="footBglm"> <a target="_blank" href="/">首页</a> - <a target="_blank" href="/custom/about.htm">关于我们</a> - <a target="_blank" href="/search/Java/1.htm">站内搜索</a> - <a target="_blank" href="/sitemap.txt">Sitemap</a> - <a target="_blank" href="/custom/delete.htm">侵权投诉</a> </div> <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved. <!-- <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>--> </div> </div> </footer> <!-- 代码高亮 --> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script> <link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/> <script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script> </body> </html>