Content management system 对于像翁布拉科这样的CMS,最重要的建议是什么?

Content management system 对于像翁布拉科这样的CMS,最重要的建议是什么?,content-management-system,umbraco,Content Management System,Umbraco,作为一名数字制作人,我与一名开发人员一起参与定制的Umbraco项目,我知道确保Umbraco保持最新状态的唯一方法是为添加到存储库中的任何代码编写测试,并使用持续集成服务器。在添加我们自己的定制修改的同时,如何使Umbraco保持最新?每个拥有大型代码库的项目都可能从持续集成和自动化测试中受益。基于CMS的项目当然可以从自动化的UI测试中获益,如果您正在向后端和前端添加自定义功能,那么也可以从单元测试中获益 基于Umbraco的项目,基本上是asp.net项目,也可以从这种方法中受益 为什么需

作为一名数字制作人,我与一名开发人员一起参与定制的Umbraco项目,我知道确保Umbraco保持最新状态的唯一方法是为添加到存储库中的任何代码编写测试,并使用持续集成服务器。在添加我们自己的定制修改的同时,如何使Umbraco保持最新?

每个拥有大型代码库的项目都可能从持续集成和自动化测试中受益。基于CMS的项目当然可以从自动化的UI测试中获益,如果您正在向后端和前端添加自定义功能,那么也可以从单元测试中获益

基于Umbraco的项目,基本上是asp.net项目,也可以从这种方法中受益

为什么需要自动化测试? 假设一个庞大的代码库,而不仅仅是一个简单的营销网站 因为手动测试非常耗时,只能由一个人或一组测试人员完成。如果您有UI测试,例如在Selenium中,每个开发人员都可以在其本地安装上运行这些测试,以便在提交到源代码管理服务器之前进行测试。非开发人员也可以运行这些测试,例如针对临时服务器。Selenium或任何其他包测试都可以在部署之前和/或部署之后运行

手动执行所有这些测试将占用您相当多的时间。 维护这些测试也需要更多的时间, 但远不如每次部署时手动执行这些操作

对于Umbraco,您可以使用以下工具:

VisualStudio中的单元测试:具有单元测试项目的模板,您可以使用这些模板编写单元测试来测试自定义代码

单元测试Umbraco:检查最新的代码,因为他们有一些代码可以帮助您实现这一点。一些补充资料:

Selenium:可以在您的站点上运行,并执行各种UI测试,例如验证表单、javascript功能

Qunit:如果您需要javascript单元测试。我没有使用过这个,但是我们正在寻找一个解决方案来测试我们的Java脚本

为什么要持续集成? CI可以帮助您在构建每天晚上运行时,甚至每次有人向源代码管理提交新代码时尽早捕获bug。尤其是在团队中工作时,CI在避免代码冲突方面非常有用。将CI和自动化UI测试结合起来甚至更好。每天晚上,项目都要在服务器上构建,UI测试运行,早上作为制作人,你可以得到报告,无论一切是否顺利,构建是否工作,等等

Cuisecontrol.Net和NANT Cruisecontrol和Nant都是开源工具,可以安装在大多数Windows服务器上。 这些工具可以从svn或其他源代码管理服务器中提取代码并重建项目。然后,Nant可以复制文件、创建IIS站点、更新应用程序池等。。创建一个全新的网站。 此方法需要额外的基础架构ci服务器、svn服务器、额外的安装等,如果你只是在一个较小的网站上工作,可能会有点笨重

我确实在这个上下文中使用了Umbraco:CI+selenium对一个电子商务项目进行测试,该项目每晚构建大约50个Umbraco站点,并运行一些基本的selenium测试。每天早上,网站都是新鲜的,基于最新的代码