一次失败的WebService布署

今天真是失败啊,加班加到1点,而原因居然都是一些小细节。

细节1。midas.dll  以前都是不能处理的异常向外抛出,这次居然自作主张,什么异常都不抛,看上去一片歌舞升平,结果,搞的上至经理,下至程序员都以为是自己的问题,把Web服务器搞坏, 一个个疯狂中。没想到抛出异常一看,原来是Delphi的midas.dll没更新至最新版本。唉,这里要说一下,如果WebService中有用到TClientDataSet的话,机子上的midas.dll要是最新版本的,要不然会出动态数组被锁的异常。

细节2。测试用例。 测试用例总是好的,但如果这个测试用例与实际使用的用法不一样的话,那就真的大大的不好了。我给了Web开发人员一个测试用例,其中的参数并不是实际要用的参数,这下有意思了,我的测试用例,哇,真是绿油油的,但Web那儿死活都不行,半夜三更,客户的服务器又在NN远之外,没有数据,只好动手构造出一个假的,一测才知道,唉,Web上本来应该用另一个参数的,结果用了我测试用例上的参数。唉,有测试用例是好的,但不合实际的测试用例还不如没有测试用例。不过,这儿要说一下,测试用例的重要也在这次表现了出来,正因为有测试用例,才能在一次又一次的服务调整中进行重复测试,才能在最后得出WebService是正确的,但Web调用不对的结论,所以啊,测试用例还要写,但水平实在是有的要提高了。

细节3。交流。还是那个关异常都吃掉的问题。如果没有与同在加班的同事交流关于WebService的写法问题的话,可能到天明都还不知道为什么。所以,独立解决问题是好的,但,与同事多多交流,会更有利于问题的解决与个人的成长。

细节4。在一切可能都被证实是错的情况下,即使是最不可能的,也是事实。在把所有异常都吃掉的情况下,我一直认为我的代码没有问题,从而一直在找服务器的问题,而完全无视了其它WebService是正常的情况,一直没有怀疑自己的代码会不会抛异常,最后才发现,异常都吃掉了,当然代码没有异常了。唉,知道了结果,真是无地自容啊。

注重细节不一定就能成功,但注重细节一定是成功的一部分。看来还有很长的路要走啊。
    要注意积累平时的经验,像midas的问题,以前不是没有遇上过,但解决完也就完了,没有记下来。
    要注意测试,测试用例要与实际一样,而且不是用一个例子过就可以了,要想想有什么问题,多写几个不同方面的测试出来
    要与同事多多交流,难搞的问题,不如与同事多谈谈,他们可能已经解决过了
   
希望不要有上面这些原因而搞的下一次加班。1点,天好冷,可怜我还穿短袖啊。这下要感冒了。

你可能感兴趣的:(webservice,web开发,测试,服务器,web服务,Delphi)