Apex测试如何进行Visualforce请求?

问题描述:

我一直在阅读“理解Apex测试”。在题为理解测试数据的部分,有一个句子读Apex测试如何进行Visualforce请求?

如果测试使得Visualforce请求,执行测试停留在 测试方面,但在不同的线程中运行,因此测试数据隔离 不再强制执行。

这很有趣,我想编写一个测试类,说明这个概念,但我对句子的第一个条款感到困惑:“如果测试使得Visualforce的请求......”。如何做到这一点?

PageReference pageRef = new PageReference('/apex/testVFPage'); 

这是如何请求一个vf请求。结果页面的响应将存储在'pageRef'中。 PageReference用于此目的。拥有vf页面rquest的最佳做法如下。

PageReference pageRef = Page.testVFPage; 

它允许Force.com平台检测页面依赖性。

如果您需要为您的控制器做代码覆盖请求。然后这样做。

Test.setCurrentPageReference(Page.testPage); //vf page request 
ApexPages.currentPage().getParameters().put('id',ord.Id); //pass parameters if needed