当前位置: 首页 > news >正文

爱站网seo综合查询工具网站建设教程流程图

爱站网seo综合查询工具,网站建设教程流程图,宠物网页制作模板,wordpress 股票如果您像我一样#xff0c;则可能已经花费了很多时间在查询分析器中开发代码。在您对代码感到满意之后#xff0c;可以立即对开发服务器上的测试数据库运行一个或两个专设 测试。如果看起来没有什么问题#xff0c;您便可以将代码投入生产。如果这是一段关键代码#xff0c…如果您像我一样则可能已经花费了很多时间在查询分析器中开发代码。在您对代码感到满意之后可以立即对开发服务器上的测试数据库运行一个或两个专设 测试。如果看起来没有什么问题您便可以将代码投入生产。如果这是一段关键代码或者该代码较为复杂则您可能会执行更多的检查以避免后验剖析。甚至在这种情况下您也可能屏息以待。www.chinai tp 采集 ow er.comd1nHRZf这就是我在大部分职业生涯中所采用的编码方式。哦有时我会存储测试查询以供将来使用这通常是因为总裁/CEO/CIO/部门经理习惯于大约每周就改变一下他或她的要求。但是除此以外我不会再做什么。我通常在查询分析器或它的 Oracle/Access/FoxPro 等效工具外部用专设 查询进行测试。更高强度的测试需要使用查询分析器调试器。在绝望的情形下需要使用 PRINT 语句。www.chinai tp 采集 ow er.comd1nHRZf目前存在 一种更好的方式。www.chinai tp 采集 ow er.comd1nHRZf超越专设 测试www.chinai tp 采集 ow er.comd1nHRZf当我的 SIL 部门采用极限编程 (XP) 时我们还采用了该方法论的单元测试部分而它们两者都使我成为更出色的开发人员。但是即使您不在 XP 环境中工作您仍然可以从 XP 风格的单元测试中获益。 www.chinai tp 采集 ow er.comd1nHRZf单元测试不同于接受测试。单元测试用于测试较小的代码块(例如存储过程)而接受测试更多地涉及到用户是否可以接受 UI。以下是我发现的单元测试的五个优点www.chinai tp 采集 ow er.comd1nHRZf? 它们能够找出应该承担责任的当事人。您是否收到过电子邮件告诉您应该修复程序错误而这实际上是其他某个人所作更改的副作用好如果您具有一些零散的测试查询请将它们包装到可以定期运行(或许是在晚上)的存储过程中。请确保在单元测试失败时能够生成电子邮件。 www.chinai tp 采集 ow er.comd1nHRZf? 生成库不需要花费很长时间。每个存储过程和每个存储函数都应当具有为它编写的测试而触发器也应该如此。如果这听起来有些苛刻那么请想一想能够在问题到达生产服务器之前捕捉到它从而拯救您自己将会是一种多么好的感觉。如果您具有大量旧式代码那么为每个单元编写测试可能需要多年的工作并且您也不能仅仅为了编写测试而停止新的开发工作。但是您可以为每段新代码编写测试也可以为您修改的每个过程编写测试。用不了多长时间您就会为关键的旧式代码和新代码编写众多的测试。 www.chinai tp 采集 ow er.comd1nHRZf? 轻松创建准确的代码文档。每个过程或函数都应当用不同的参数组合调用。这不仅能够确保代码按预期方式工作而且还提供了有关您的工作的最新而准确的文档。另外一个编码员只需查看您的测试就可以了解对您的过程进行调用的示例。谁知道呢某一天这另一个编码员可能就是您自己。 www.chinai tp 采集 ow er.comd1nHRZf? 它们迫使您预先进行一点儿思考和计划。您应当在编写实际的过程或函数之前编写自己的单元测试。“什么”您说“我抗议我们如何为尚未进行编码的东西编写测试” www.chinai tp 采集 ow er.comd1nHRZf? 有一个很老的笑话它讲的是有一个经理说“我将弄清楚他们需要什么。其余的人开始编码。”那么编码员在知道他们需要编写什么之前是无法开始工作的不是吗当您首先编写测试时您将被迫考虑在开始编写该过程之前您希望该过程完成什么工作。 www.chinai tp 采集 ow er.comd1nHRZf? 它们确实可以节省您的时间。开发人员经常抱怨编写测试需要花费比编写实际过程更多的时间。有时的确如此。但是请考虑以下情况我最近接受了一项任务即修改我曾经遇到过的最难的存储过程之一。它是旧式代码但是我仍然首先编写了测试。它花费了我几天的时间才完成部分原因在于对该过程所施加的要求。实践证明出于我刚才列出的所有原因该测试非常重要并且当我必须重新编写该过程以改善性能时它变得弥足珍贵。 www.chinai tp 采集 ow er.comd1nHRZf? 单元测试显示重新编写的过程中存在大量错误而我能够很快地找到每个错误的根源所花费的时间只占不使用单元测试时的几分之一。然后当我认为已经完成该任务时模糊测试失败了。主循环中的变量之一存在缺陷。如果代码以这种状态发布到生产环境中那么这将是一个难以捕获的程序错误。最终我以比采用其他方式更快的速度完成了这项任务。 www.chinai tp 采集 ow er.comd1nHRZf如何编写 T-SQL 单元测试www.chinai tp 采集 ow er.comd1nHRZf在我告诉您有关 T-SQL 测试框架的内容之前首先需要提醒您注意两个非常基本的原则www.chinai tp 采集 ow er.comd1nHRZf? 第一您需要一个具有良好测试数据的数据库。我用“良好数据”表示来自现实世界的真实数据。无论您是一个多么优秀的程序员都无法充分地为应用程序仿造数据。即使要替换的旧式系统由纸张组成也要找一位数据录入员来在某些表中输入数据。完成获得真实数据所需的工作。[尽管如此仍然存在测试数据生成器。请参见本期中我的提示“生成测试数据”— 编者]www.chinai tp 采集 ow er.comd1nHRZf? 第二不应当针对生产数据库进行开发。您应当具有一个开发或测试数据库以便满足您自己的需要。过去当我在 Oracle 进行开发时我曾经花费了一周的时间将开发数据库放在一个陈旧的服务器上。SQL Server 开发人员没有这样的借口。 www.chinai tp 采集 ow er.comd1nHRZf在为开发数据库配备良好的数据以后您需要某种框架以便运行测试。您可以编写自己的框架但是为什么要这么做呢已经有一个可用的框架了。www.chinai tp 采集 ow er.comd1nHRZfTSQLUnit 简介www.chinai tp 采集 ow er.comd1nHRZfTSQLUnit 是 T-SQL 的一个开放源码单元测试框架它由 Henrik Ekelund 编写并且可以从 http://sourceforge.net/projects/tsqlunit 获得。以下是一个有关我如何使用它的示例。www.chinai tp 采集 ow er.comd1nHRZf我的 TSQLUnit 测试采用了类似的三部分模式1) 单元测试设置2) 执行目标过程和 3) 检查结果。www.chinai tp 采集 ow er.comd1nHRZf在单元测试设置过程中我经常进行检查以确保没有人趁我不注意时破坏了我的数据www.chinai tp 采集 ow er.comd1nHRZfDECLARE nId INT, nNewId INT a?”- nNewId is for laterSELECT nId [ID] FROM MyTableWHERE MyField whateverIF nId IS NULL -- or ROWCOUNT 0EXEC tsu_failure The data has changed.whatever couldnt be foundIF 块用于检查预期的记录。如果找不到该记录则测试会失败并且会生成错误信息。测试框架移动至下一个单元测试。您不需要在失败消息字符串中使用该单元测试的名称因为当测试失败时TSQLUnit 将为您命名它。www.chinai tp 采集 ow er.comd1nHRZf现在我调用将要编写的存储过程www.chinai tp 采集 ow er.comd1nHRZfEXEC CreateMyTableNewRec nId, nNewId OUTPUT正如您看到的那样我已经确定了需要来自这一新过程的输出参数。在检查结果的过程中我确保输出参数确实填充了某些内容www.chinai tp 采集 ow er.comd1nHRZfIF nNewId IS NULLEXEC tsu_failureA new record was not created for table MyTable.我可以进一步检查该值以查看新记录是否是按照我希望的方式创建的。www.chinai tp 采集 ow er.comd1nHRZf每个 TSQLUnit 测试本身都是一个存储过程。清单 1 显示了在将上述所有代码段放在一起时所具有的样子www.chinai tp 采集 ow er.comd1nHRZf清单 1. T-SQL 的完整单元测试。www.chinai tp 采集 ow er.comd1nHRZfCREATE PROCEDURE ut_MyTable_NewRecAS-- Setup --DECLARE nID INT, nNewId INTSELECT nId ID FROM MyTableWHERE MyField whateverIF nId IS NULL -- or ROWCOUNT 0EXEC tsu_failure The data has changed.Whatever couldnt be found-- Execute --EXEC CreateMyTableNewRec nId, nNewId OUTPUT本条技术文章来源于互联网如果无意侵犯您的权益请点击此处反馈版权投诉本文系统来源php中文网TAG标签测试查询开发
http://www.pierceye.com/news/713207/

相关文章:

  • 口碑好的网站建设苏州园区做网站公司
  • 网站互联网设计图风格网站服务器异常是什么意思
  • 有哪些好的做兼职网站有哪些免费做ppt的网站
  • 学生成绩管理系统网站建设上海公共招聘网12333官网
  • 邵东做网站的公司wordpress修改文章字体颜色
  • 那个网站百度收录快天河高端网站建设
  • 网站建设 客户拜访wordpress设置新页面
  • 做百度推广送的网站网站建设中gif
  • 网站风格介绍wordpress怎么给产品编号
  • 站长聚集地深圳网络提速优化服务包
  • 西安外贸网站建设公司网站域名过期后续费多长时间生效
  • 网站制作资质2017建设厅网站
  • 网站系统开发毕业设计哈尔滨seo优化软件
  • 南通企业网站网站制作的书籍
  • 长沙网站收录怎么网站能找人做装修事
  • 鞍山网站制作谁家好2021没封的网站有人分享吗
  • 网站建设公司net2006iis虚拟网站
  • 有哪些竞价网站wordpress手机端网站模板下载
  • 浙江建设厅网站施工员报名莱芜庞允盟
  • 网站建设 销售 知乎云南网站设计外包
  • 网站建设怎么学习phpcms门户网站
  • 佛山营销型网站定制三站合一网站建设方案
  • 广州市哪有做网站的查找全国免费网站建设
  • 江门seo网站推广跳动爱心代码html教程
  • 网站退出率网易搜索引擎入口
  • 企业网站建设方讯长沙城乡建设网站
  • 手机网站建设优化软件做网站空间费用是什么意思
  • 网站透明效果工厂网站建设流程图
  • 崇安网站建设广州本地门户网站
  • 网站建设公司河南郑州wordpress 单栏