您身边的网站建设专家
成功案例

【建站服务】扬中申请400电话费用【扬中企业全国热线电话办理】扬中开通400电话电信价格、扬中微信公众号代运营外包托管、扬中网店编辑装修美工、扬中网站推广优化大概需要多少钱-域名申请

日期: 2022-09-20 15:24:47 浏览数:3


上往建站提供服务器空间服务商百度快照排名网站托管百度推广运营,致力于设计外包服务与源代码定制开发360推广搜狗推广,增加网站的能见度及访问量提升网络营销的效果,主营:网站公司,百度推广公司电话,官网搭建服务,网站服务企业排名,服务器空间,英文域名等业务,专业团队服务,效果好。


扬中申请400电话费用【扬中企业全国热线电话办理】扬中开通400电话电信价格、扬中微信公众号代运营外包托管、扬中网店编辑装修美工、扬中网站推广优化大概需要多少钱


扬中,江苏省辖县级市,由镇江市代管。位于镇江市东部江心,黄金水道——长江中下游,苏南现代化建设示范区内,是南京都市圈成员县级城市,“北面与扬州、泰州隔江相望,南面与镇江、常州一衣带水。全市由太平洲、中心沙、西沙岛、雷公岛四个江岛组成,总面积332平方公里,其中陆地面积228平方公里。扬中城市建成区面积13.9平方公里,滨江新城规划建设面积6.8平方公里,城镇化率达64.26%。 [1]  拥有可开发深水岸线54公里。 [1]  下辖4个镇、2个街道 [2]  、扬中经开区和扬中高新区,总人口34万,在镇江发展全局中具有重要地位。

扬中产业特色鲜明,是远近闻名的“电气岛”、“光伏岛”,“长江制造业走廊”其中电气领域更是中国最大的工程电气原料市场,并被授予“中国工程电气名城”,扬中先后荣获“国家卫生城市"、“国家生态市”和“国家园林城市”,“国家环保模范城市”通过国家级考核验收。 [2]  2019年人均地区生产总值14.15万元 [3]  。连续两年列镇江市高质量发展考核一等奖第一名,位列2019年度“全国中小城市综合实力百强县(市)”第23位。 [3] 

扬中农村别墅特色鲜明,西班牙驻华参赞夫人克里斯蒂娜夫人以及摩洛哥驻华公使等28个国家的60余位驻华使节曾到此参观留念。

扬中的城市精神是“上善若水,自强不息。”

Tests$ phpunit 
... ...OK (15 tests, 20 assertions)复制代码

4.1.3 对接口类的三角验证

如果细细观察,会发现上面实现的代码是很脆弱的。线上环境之所以出现问题,往往是因为我们在前面思考得还不够全面,还不够深入。若在开发阶段,通过测试驱动开发,提前预测或者思考日后线上可能发生的问题的话,那么我们开发的代码就能具有更强大的生存和适应能力。

为了编写出更全面的测试用例,这里分享一下在《测试》一书中讲到的三角验证。

三角验证思路很简单,首先编写一个正常数据处理的测试用例,再编写另外一个正常数据处理的测试用例,最后编写一个失败或异常的测试用例。通过不同的维度,对待测试的类进行全方位的测试。

例如,继续前面获取评论的单元测试,我们先手动追加一条测试数据。

INSERT INTO `pa_comment` VALUES ('2', '欢迎阅读《初识PhalApi》~');复制代码

前面对于接口类Api_Comment的单元测试,已经测试了获取评论ID为1的数据,现在让我们再来添加获取评论ID为2的数据,并进行验证。

// Tests$ vim ./Api/Api_Comment_Test.php
    public function testGetAgain()
    {
        $url = 'service=Comment.Get';
        $params = array('id' => 2);

        $rs = PhalApi_Helper_TestRunner::go($url, $params);

        $this->assertEquals(2, $rs['id']);
        $this->assertArrayHasKey('content', $rs);
    }复制代码

再次执行此单元测试,验证通过。

有读者可能会觉得添加对评论ID为2的获取验证,显得多此一举。确实是有一点,这是因为我们的评论接口服务功能已经开发完成。而三解验证主要是应用在测试驱动开发阶段,即在功能未开发完成的时候。还记得,我们最初模拟获取评论的实现代码吗?它是这样的:

    public function get() {
        return array('id' => $this->id, 'content' => '模拟获取:评论内容');
    }复制代码

对于这样的情况,上面的测试是有效的。因为它发现了我们正在“造假”,而不是返回真正的业务数据。

继续往前,除了正常情况外,我们还要验证失败或异常情况时,接口服务能否按预期那样响应。例如接口参数非法时怎么办,业务数据不存时怎么处理,调用第三方接口服务超时如何响应,数据库连接不上时如何降级等。对于此获取评论的接口,让我们来验证一下获取一个不存在的评论内容时,是否能按期望那样返回一个空数组。

先添加多一个测试用例,故意获取一个不存在的评论。

// Tests$ vim ./Api/Api_Comment_Test.php
    public function testGetNotExists()
    {
        $url = 'service=Comment.Get';
        $params = array('id' => 404);

        $rs = PhalApi_Helper_TestRunner::go($url, $params);

        $this->assertSame(array(), $rs);
    }复制代码

需要注意的是,最后的断言,使用的是assertSame(),保证返回的结果的值和类型都是对的,即应该是空数组,不是FALSE,也不是0,更不是NULL。

这里,再次执行此单元测试,会发现,断言失败了!

1) PhpUnderControl_ApiComment_Test::testGetNotExistsFailed asserting that false is identical to Array &0 ().复制代码

这表明,前面看似能很好工作的代码,并没有完全按照我们的期望提供服务。而这个问题最终有可能会导致什么问题呢?这要视具体的业务而定,但如果约定在未找到评论时返回空数组,实际上却返回的是布尔值FALSE,在使用Javascript、Java或者Object-C开发的客户端就可能会产生一些奇怪的问题,甚至会导致客户端崩溃。因为返回的类型与预期的不一致。还好,我们及时发现了这个问题。

归其原因,是因为NotORM在向数据库获取数据时,若数据纪录不存在,会返回FALSE。知道了问题所在和对应的原因后,要修改优化就很容易了,只需要在Domain层对Model返回的数据进行判断即可。

// $ vim ./Shop/Domain/Comment.php <?phpclass Domain_Comment {

    public function get($id) {
        $model = new Model_Comment();
        $rs = $model->get($id);
        // 判断数据有效性
        return !empty($rs) ? $rs : array();
    }}复制代码

当然,三角验证不是意味着只有三个测试用例,而是从不同的维度进行验证,包括正常的场景,失败的场景,异常的场景等等。通俗来说,就是想尽一切办法,通过不同的方式验证你的代码的正确性。又比如,对于未传递评论ID或者传递了错误的评论ID时,让我们来验证一下是否如期返回错误提示。

// Tests$ vim ./Api/Api_Comment_Test.php
    /**
     * @expectedException PhalApi_Exception_BadRequest
     */
    public function testGetWithWrongId()
    {
        $url = 'service=Comment.Get';
        $params = array('id' => 'a_wrong_id');

        $rs = PhalApi_Helper_TestRunner::go($url, $params);
    }复制代码

在上面的测试用例中,我们故意传递了值为“a_wrong_id”的评论ID,显然这是错误的参数,并且应该抛出PhalApi_Exception_BadRequest异常,所以我们通过@expectedException注解对此进行了断言。

随着单元测试的不断完善,和生产品代码的不断演进,最后我们将会得到更高质量的代码,和更大的自信心。

c51c866ffa1ab3457f2021e8bbdbcc1.jpg

扬中申请400电话费用扬中企业全国热线电话办理扬中开通400电话电信价格、扬中微信公众号代运营外包托管、扬中网店编辑装修美工、扬中网站推广优化大概需要多少钱


上往建站提供搭建网站域名注册官网备案服务网店详情页设计企业网店专业网络店铺管理运营全托管公司咨询电话,服务器空间,微信公众号托管网页美工排版,致力于域名申请竞价托管软文推广全网营销,提供标准级专业技术保障,了却后顾之忧,主营:虚拟主机网站推广百度竞价托管网站建设上网建站推广服务网络公司有哪些等业务,专业团队服务,效果好。

服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)


全国咨询热线:400-111-6878

地址:全国各地都有驻点商务

Copyright © 2021 通陆科技

网站建设上往建站