发布新日志

  • 2009-9月至10月面试经历

    2009-11-29 00:34:13

           8月初从原公司离职回杭州后,以办理户口迁移为“借口”给自己放了一个月的假。这期间原本想自己先回顾一下测试方面的理论知识,可最后不得不承认,自己不是主动学习的料。

           9月初回到杭州,开始正式投简历,第一周磨磨蹭蹭地投了几家,只得到了一次面试机会,第二周开始大量投递简历,中间出现了一周的空档期(估计是投了简历后,目标公司需要一周时间消化和安排),第三周临近结束与第四周就是频繁的面试之旅了。

    1.       浙江中控技术股份有限公司

    环境状况:有独立的园区,办公环境有些阴暗,所用办公电脑显示器还以纯平为主,测试部门MM占大部分,据其介绍目前有软、硬件测试工程师30多人。

    面试过程:首先填写了一份个人信息表,之后按要求在40分钟还是1小时内完成了一份200多道题的心理测试题(注:个人认为主要是测试面试者的性格及智力状况),随后开始了平生最大阵仗的面试(注:56个人一起面我)。

    面试内容:主要被提问到,为什么离开原来公司?要求介绍以前的工作经历,并在过程中随机提问跟工作有关的问题。

    结果/印象:出师未捷!估计主要是我的心理测试结果偏向于活泼(对该测试准确度抱怀疑态度)和跳槽频繁致使失败。

    2.       阿里巴巴网络技术公司(滨江总部)【外包面试】

    环境状况:有独立园区,而且面积挺大,建筑和设施很具现代气息,两个字形容:气派。

    面试过程:首先做了1个小时(也有可能是90分钟,记不清了)的笔试题,然后面试。

    面试内容:笔试部分主要是用例的设计、SQLLinux方面的题目;面试部分主要轮番的被问及具体的工作中的测试设计,问的很细,细到要把所有可能情况都考虑进去。

    结果/印象:简直可以用“狼狈”两个字来形容,笔试因准备不足,答的不好。面试中别问及的用例设计内容,又因为以前公司更本不会去考虑那么细,所以常被问的无语。个人感觉该部门在于质量方面的要求非常严苛,黑盒做到如此程度确实值得尊敬。

    3.       淘宝网【外包面试】

    环境状况:在一座高级的写字楼中,会客环境非常清新简约,两个字形容:时尚。

    面试过程:首先是每个人1分钟的自我介绍,然后要求写下包括自己在内的所有面试者的名字(当时就懵了,一个也没写出来),之后按要求完成一份面试题,最后是即兴设计环节。

    面试内容:笔试部分主要是平时与电脑相关的使用常识以及一些相关的知识,好些问题蛮偏门的;面试部分主要是一道即兴设计题,和测试没有直接关系,主要考验理解与反应能力,具体题目就不透露了,估计他们长期靠这道题选拔人才呢。

    结果/印象:只能用“出乎意料”来形容这次面试,结果可想而知了。淘宝以这种面试来选取平时注意细节,而临场反应能力又较强的人,我可以理解,但是否真能选出测试方面的人才就很难说了。

    4.       现在所在的公司

    5.       恒生电子股份有限公司

    环境状况:一座很有特点的写字楼,办公环境很宽广,工作环境很宽松,可以用两个字形容:舒适。

    面试过程:首先在大厅填了一份个人信息表,然后被安排直接面试

    面试内容:主要通过面试者的自我工作介绍,在其中随机提问,问的问题也相对尖锐,如果回答的不够清晰,面试官会一直抓住不放,直到你给出满意的答案或承认欠考虑为止。最后被问及是否有炒股,是否使用过电子商务购物。

    结果/印象:没戏!估计还是老毛病,测试设计没有达到其精细度要求,并对其主要测试业务不了解。恒生给我最大的印象就是“舒适”,在等待面试官召见的过程中,发现他们有专门提供员工休息的场所,并还配有糖果、饼干、咖啡等食品。

    6.       天格科技(杭州)有限公司

    环境状况:在一座中高档的写字楼里拥有数个不连续的工作间,主要从事网站的开发与运营,据介绍有测试人员10个左右。

    面试过程:首先给了一份所谓的笔试题(除了开发知识就是质量知识),拒绝作答之后,他们的一个主管安排我填了一份个人信息资料,然后安排了一个人对我进行测试知识面试。

    面试内容:笔试部分只有两道,一道是用例设计,另一道是微软的智力面试题;面试部分被要求介绍了自己的工作内容及经历

    结果/印象:只能说面试完之后,我心情很差,并不是因为面试的结果怎么样,而是觉得是浪费时间,连个健全的面试过程都没有,把面试当儿戏。

    7.       聚光科技(杭州)有限公司

    环境状况:有独立的园区,比较大,不过结构比较传统。据了解其软件测试部门有13人,到国庆之后扩展到15人。

    面试过程:填写了一份个人信息表,一份性格测试题,一份测试笔试题,之后经过了测试组长、测试主管、开发主管这三面。

    面试内容:笔试部分中的性格测试题挺有意思,如果如实填写,基本能够测试出面试者的性格状况(个人感受:挺准的);测试相关的内容主要是测试知识、SQLLinux知识;面试主要谈了以前工作的内容,回答一些与以前工作相关的问题。

    结果/印象:通过。该公司主要做环保仪器,软件方面主要做环保系统,待遇不错,三年测试工作经验可以给到6万到7万一年。最后我拒绝了这家公司,一是因为工作地点在滨江,二是觉得在纯软件公司会更有发展。

     

    总结:整个面试过程中,感觉杭州的软件公司对于测试人才的需求还是比较强劲的,不过也主要是面向3年测试工作经验与重点大学相关专业毕业的研究生。随着面试旅程的延续,容易产生妥协心理,所以最好不要选择离职后再找工作;如果已经离职了,也要相信自己,勇敢地坚持到最后。

    心得:面试没有通过是因为你没有找到合适你的位置,而软件公司如此之多,必定有适合你的岗位。

  • SVN1.6.6安装心得

    2009-10-27 19:46:29

    为彻底解决SVN客户端和服务器版本之间的不一致(公司原本使用的是Subversion-server-1.5.3+TortoiseSVN-1.6.2)而引起的CruiseControl自动从SVN上获取代码的版本冲突,我特地从SVN官网上下载了同是1.6.6-win32的客户端和服务器安装包.

    在网上找了安装配置说明,具体配置记录如下:

    1.Subversion1.6.6版本的安装包自带了Apache2.2.13,所以无需额外安装Apache服务器。下载地址是(需要注册后再下载)

    2.一路默认安装,如果需要修改仓库根目录或者Apache2.2.13端口可以自行修改为自己想要的,Apache默认端口为80Subversion默认仓库存储路径为C:\svn_repository。安装的过程中会自动将SubversionApache注册成服务,安装完成后重启一下电脑,运行services.msc查看服务,可以看到 “CollabNet Subversion Apache”“CollabNet Subversion svnserve”两个服务已经自动启动,如果不想让他们自动启动,可以修改为手动启动。

    注:安装结束时没有提示重启电脑,但重启之前Apache服务无法启动,提示“The requested operation has failed!”

    3.重启电脑后运行C:\Program Files\CollabNet\Subversion Server\httpd\bin“ApacheMonitor.exe”打开Apache控制台,可以看到控制台的状态栏有如下内容:
    Apache/2.2.13 (Win32) DAV/2 SVN/1.6.6

    4.运行命令提示符cmd
    cd C:\Program Files\CollabNet\Subversion Server
    svnadmin create c:\rep

    //
    svnadmin命令创建名为rep的仓库(这条命令成功后,在rep下会出现很多文件夹和文件)
    cd C:\Program Files\CollabNet\Subversion Server\httpd\bin
    htpasswd -cm c:\rep\user.txt admin

    //
    htpasswd命令创建用户(admin),同时生成密码认证文件,c参数为createm参数为MD5加密方式
    New password: ******
    Re-type new password: ******
    Adding password for user admin  
    //
    加入用户成功
    htpasswd -m c:\rep\user.txt test
    //
    htpasswd命令创建用户(test),注意如果在这时加入c参数会覆盖掉之前创建的用户及文件。
    New password: ******
    Re-type new password: ******

    Adding password for user test   //
    加入用户成功

    5.C:\rep下新建文本文件access.txt。建议用UtralEditEditPlus编辑工具打开,若用记事本打开,注意不要勾上格式里的自动换行,输入以下内容:
    [/]
    admin = rw
    test = r
    * =

    6.UtralEditEditPlus编辑工具打开C:\Program Files\CollabNet\Subversion Server\httpd\conf下的httpd.conf文件,
    找到115行和116行的代码如下:
    115 LoadModule dav_module       modules/mod_dav.so
    116 LoadModule dav_svn_module     modules/mod_dav_svn.so

    116行下面加入如下一行代码,这行代码就成为了117行:
    LoadModule authz_svn_module   modules/mod_authz_svn.so

    文件最后面的信息如下:
    <Location /svn>
    DAV svn
    SVNParentPath C:\svn_repository
    </Location>

    修改为:<Location /rep>
    DAV svn
    SVNPath C:\rep
    AuthType Basic
    AuthName "Subversion Repository"
    AuthUserFile "C:\rep\user.txt"
    AuthzSVNAccessFile "C:\rep\access.txt"
    Require valid-user
    </Location>


    7.通过ApacheMonitor控制台在任务栏右下角的图标的Restart命令重新启动apache,用IE打开http://localhost/rep,输入用户名admin与密码,这时应该可以看到
    rep - Revision 0: /
    ---------------------------------- 
    //
    说明经配置成功了

    以上内容摘录至 http://bbs.pmlife.net/viewthread.php?tid=20219

     

    作为初次配置带有apacheSVN的新人,我在过程中犯了以下几个错误:

    1.     没有正确理解apache在安装SVN中的作用。

    正解:网上查询得到的结果如下

          Subversion有两种运行方式,一种是基于Apache Http Server另外一种是Subversion Standalone Server。下面我讲解的是基于Apache Http ServerSubversion,这样做几个好处
    A.
    能使用WebDAV协议。
    B.
    能使用浏览器作为客户端工具浏览源码仓库。
    C.
    可以很容易的支持到SSPIWindows域认证)和LDAPAD?),这些都是Apache本身就支持的。
    D.
    能得到比较完善的Apache安全认证系统,比如SSL加密连接。

    2.     在修改httpd.conf文件中的SVNPath路径时没有正确加以理解,错误地理解成了安装过程中默认的C:\svn_repository

    正解:我实际创建的文件库路径是C:\rep

    3.     采用了手工的方式启动了SVN服务(svnserve –d –r C:\rep

    正解:实际上SVN安装完成并重启后,“CollabNet Subversion Apache”“CollabNet Subversion svnserve”两个服务已经自动启动了,可以直接使用客户端或浏览器进行访问。如:http://192.168.3.99:80/rep/

    因此之后对SVN使用中,系统报出 authentication failed.以及后来出现的"Could not open the requested SVN filesystem"错误。

     

    2009-10-29 上午)

    今天又碰到一个新的问题,本机访问SVN正常,但内网其他机子无法访问,提示 OPTIONS of 'http://xxxx/rep': could not connect to server (http://xxxx)

    正解:查了一个多小时的原因,最后才经同事提醒,防火墙影响了访问,关闭防火墙后就能正常访问了。

  • ccnet.config配置文件

    2009-10-22 11:38:12

    <cruisecontrol>

             <!—自动编译的项目名称及编译结果存放、显示的路径 -->

        <project name="PerMerchant" queue="Q1" queuePriority="1">

          <workingDirectory>F:\Integration\TEST\WorkingDirectory</workingDirectory>

          <artifactDirectory>F:\Integration\TEST\Artifacts</artifactDirectory>

    <webURL>

    http://192.168.3.99/ccnet/server/local/project/TEST/ViewLatestBuildReport.aspx

    </webURL>

          <modificationDelaySeconds>10</modificationDelaySeconds>

             <!—

    以下是SVN源码控制部分,其中autoGetSource="true"表示CCNET可以自动从SVN上获取代码

    -->

          <sourcecontrol type="svn" autoGetSource="true" >

                <!—如果没有默认记住登陆帐号与密码就需要添加帐号密码的输入-->

            <trunkUrl>svn://192.168.3.99/Testes/</trunkUrl>

            <!—SVN上下载的代码存放地址-->

            <workingDirectory>F:\test\source</workingDirectory>

            <timeout units="minutes">10</timeout>

          </sourcecontrol>

             <!—

              以下触发事件的设置CCNET60秒检查一次SVN是否有变动,其中buildCondition = "IfModificationExists"表示如果SVN有变动存在的情况就进行Build

              -->

          <triggers>

            <intervalTrigger

              seconds="60"

          buildCondition="IfModificationExists" />

          </triggers>

             <!—

             以下是编译的任务执行设置

             -->

          <tasks>

            <nant>

              <executable>F:\nant-0.86-nightly-2009-05-05\bin\NAnt.exe</executable>

                       <!—指明.build文件的存放的绝对路径-->

              <baseDirectory>F:\test\source\PerMerchant</baseDirectory>

              <targetList>

                <target>run</target>

              </targetList>

              <buildTimeoutSeconds>1800</buildTimeoutSeconds>

            </nant>

    </tasks>

    <!—

    以下是发布设置

    -->

    <publishers>

            <buildpublisher>

              <sourceDir>F:\test\source\PerMerchant</sourceDir>

              <publishDir>F:\Integration\TEST\Artifacts\deliverables\</publishDir>

              <useLabelSubDirectory>true</useLabelSubDirectory>

            </buildpublisher>

       </publishers>

      </project>

     

    </cruisecontrol>

  • 持续集成环境搭建(CCNET+SVN+NANT)

    2009-10-22 11:31:45

     

    以下为对于VS2008开发的项目的自动编译环境

    工具:

    CruiseControl.NET 1.4.4.75

    Nant 0.86

    SVN 1.5.3

    TortoiseSVN

    VS2008

    IIS

     

     

    下载与安装:

     

    1.      安装IIS

    2.      下载并安装CruiseControl.NET(过程中会自动在IIS上新建一个名为“ccnet”的网站),完成后可以在开始”->CruiseControl.NET下启动CruiseControl.NET,这样就可以通过http://localhost/ccnet这个地址访问CCNET的网站了。

    3.      下载并安装VS2008

    4.      下载并安装Nant0.860.86之前的版本都没有显示支持Framework3.5,因此不确定在没有1.12.0的基础下是否能够正常使用)

    5.      下载并安装TortoiseSVN

     

    环境变量设置:

     

    /*nant.exe执行文件的路径*/

    Path  F:\nant-0.86-nightly-2009-05-05\bin  

    /*MSBuild.exe执行文件的路径*/

    VSMSBUILD_HOME  C:\Windows\Microsoft.NET\Framework\v3.5\   

    配置:

    1.     ccnet.config文件的配置

    详见ccnet.config范例

     

    2.     .build文件的配置

    详见.build文件配置范例

     

     

  • 何來質量

    2008-08-05 10:47:32

    就如人体的健康与否决定于其身体素质,软件的健康与否来自于其本身的质量。

    身体的好坏并不是一天形成的,它是长期积累的结果。众所周知,在医学较发达的今天,人是否生病通过检查基本可以查出来,但也还是会有遗漏。而从另外一个角度来说,即使检查出来了,一定可以治疗的了吗?有多少可以治愈?而作为软件的制造者,我们的测试还很基础、很薄弱,您认为单靠测试可以解决软件质量的问题吗?

    当然,我不会去推卸质量相关的责任,更不会去自喻只有我能够看到问题的本质,但是我认为最有效的是找出办法,解决问题,虽然目前条件下我们并不一定能够做的我们想看到的,但我们能够做我们能做的。

    以下我先阐述几点个人观点,仅供参考。

    1.      质量的主轴来自于软件过程,健全软件过程管理是关键。(有如人的新陈代谢)

    2.      质量的源头来自于软件需求,明确而可度量的需求,对后续的质量必定会有很好的约束作用。(健康从小做起)

    3.      质量的传递来自于沟通,良好的沟通才不至于质量到最后变质,如何去建立完善的沟通体制,值得我们认真思考并努力实践。(没有想到好的比喻,但我认为这和人的心态有类似,一贯良好的心态有利健康)

    4.      质量的创造来自于开发过程,有序而规范的开发可以从本质上杜绝质量问题的发生。(良好、健全的生活习惯创造健康的身体)

    5.     质量的控制来自于测试过程,完善、强大的测试团队可以最大程度地保障软件的质量。(医疗器械完备,医护水平高超的医院)

    6.      质量的把握来自于配置及发布过程,明确的软硬件配置以及规范的发布过程,可以让我们确定用户使用的是我们原本计划给他的。

    前面阐述的基本都是一个软件过程管理,那只是个观点,没有实际指导意义。我们应该做的就是如何从中明确自己能做什么?而不适合去讨论因为什么而质量不行?这对于我们目前来说太不切实际,毕竟我们现在各个环节都有很大问题。

    最后,我非常理想化地建言:PM加强需求管理,研究并实践如何做好需求;DM加强规范意识,组织有序的开发,研究并实践怎样的开发才能带来更好的质量保证;QC加强、完善测试体制,研究并实践如何实施特殊条件下的测试;SEPG健全软件过程管理规范,为各角色各部门提供理论指导;主管考虑怎么使团队无论在纵向还是横向实现沟通流畅,怎么解决资源问题等等。如果每个角色都努力去做了自身的那部分,最后形成的必定是整体质量的提升。

     

    总之,质量任重道远,做好自己现在能做的。

Open Toolbar