2008年8月26日

关于如何测试模块的一点感想和对Directoty模块测试的小结

这个模块做了有一段时间了,总结一下测试模块的步骤和注意的事项。

1.       当一个模块完成后,从安装过程就属于测试阶段了,如果模块是大型的系统模块,往往安装后会出现多个模块,如果模块很多的话,那么就必须建议做个WIZARD导航的模块来将这些模块分类整理到对应页面。

2.       将模块装好后,就确定自己的身份是个管理员,先查看安装上的模块控件和SETTING里面的内容,根据选项填写部分内容,例如文字,数字,符号等。

(对于数字,有时数字过大或者为空为零的时候有可能报错,这可能是程序员在填写的时候已经给了一定的范围,但是在出错的时候没有给出红色提示)

(对于符号,如“&等一些符号通常会导致程序出错,所以这里也有必要好好检查一下)

3.       在管理员测试功能能否运用的过程中,要把不好的地方和有想法需要修改的地方记录下来,因为有些想法不立刻记录下来,会很容易忘记,分析完成后再来一一查看这些想法的可行性。

4.       然后退出管理员身份,注册新用户来测试这个模块,这个时候要以对这个模块看不看得懂,好不好用的角度来进行操作,同样需要好好记录下自己的想法。

5.       查找类似模块功能的网站,找参考实例写入自己的模块,这个过程很重要,只有实例摆上了,才能真正看到这个模块的使用价值,通过比较能体会到DNN技术的优越性,能够发现模块在实际使用中的不足之处。

6.       另外建议在测试模块的时候,多人参与测试,每个人看待问题的角度不同,对待问题的解决方式也不同,完善模块的出发点也不同,一个模块要想得到广泛使用就既要操作界面符合多数人的使用习惯,操作方式适合多数人的认识范围,这也是为什么现在DNN做的模块越来越像ASP网站上的一些功能了,其实就目前见过的模块而言,只要一般网站上出现的功能,DNN都有权衡的方法来解决,来实现对应的功能。

7.       模块的汉化处理。

8.       模块说明文档的编写。

 

关于Directoty模块测试

这个模块是属于一个大型的系统模块,这个模块在最开始做出来的时候,我们把他运用于纯铁网http://www.chuntie.net/和北美中文学校网http://www.chineseschooleducation.com/,功能都能完全适应和实现,只是很多子模块的功能上用户不能自定义,包括后来崔海波测试中发现的一些问题,如删除子类的分类会导致整个管理模块页面崩溃的状况。(十分感谢他)。

于是在这个基础上,我们对模块的细节不断的进行测试和修改,但是后面一个测试中,我们发现,现有的模块的样式问题很大,一个让人不能自由控制样式显示的模块,而且在将餐馆网站内容加进来的时候,又发现了功能不够齐全,当然,当要求不断提高的时候,问题也会接踵而来。

于是开始零零碎碎的写下自己的对这个模块的缺陷,提出对这个模块实用的建议。写完了开始整理,思考其可行性,动手实现预定功能。

不过,DNN模块好在版本可以一步步的升级增加新功能,在原有不报错的简单模块上一步步的通过对照来完善模块,当然任何模块都不会是无懈可击的,例如News Articles模块和Property Agent模块,创建者没有增加导入导出功能模块,使得一个网站的信息想转到另一个网站的时候,工作量极大。

模块测试也是个愉快的过程,类似于大家来找茬,如何更快更准更实用,那有时还是有点伤脑筋的。

 

posted @ 2008-08-26 16:05 xspy520 阅读(12) | 评论 (0)编辑
  2008年8月5日

Alldnnskins即日起对国内用户推行模块全免费使用,如果国内用户需要什么模块,我们将先在已有的模块中查询类似功能模块来提供,如果我们没有此类模块,我们将首先考虑其商业价值,根据用户的需求分析,免费做出此类模块供给大家使用,所有模块允许被运用于国内网站中,希望国内其他DNN制作公司也能对内开放。

 

国内站点:http://www.alldnnskins.cn/

国外总部:http://www.alldnnskins.com/

 

posted @ 2008-08-05 10:36 xspy520 阅读(82) | 评论 (3)编辑
  2008年7月18日
:看过m2land的一篇文章是关于DNN设置皮肤出错后如何还原默认皮肤的,但是有时候的错误甚至让你连重新登陆的机会都没有,只能返回页面的错误前的一个步骤,不管进行如何操作都是显示错误页面,只要存在错误的网址就能还原步骤。偶然发现了国外的修改这类问题的解决方法。

If you happened to applied a wrong skin, and you can not go in to the site anymore. There is a simple method can reset your skin to default if your login is not timed out yet.

Simply add this

/Host/Skins/tabid/35/portalid/0/Default.aspx?SkinSrc=[G]%2fskins%2fdnn-blue%2fhorizontal+menu+-+full+width

to your domain. And you can click the reset to default.

这段话意思是在你错误的页面上,在基础网址后添加上述代码,即可恢复原貌,无需再登陆HOST,因为有些时候没有办法让你进行任何操作,这类型的问题我也经历过一次,用上面代码可行。

M2land的原文章:DNN设置皮肤出错后如何还原默认皮肤

相关网站内容,敬请参考:http://www.dnnsun.com/Community/BaldwinsBlog/tabid/67/EntryID/44/Default.aspx

posted @ 2008-07-18 14:52 xspy520 阅读(30) | 评论 (2)编辑
News  Articles这个模块是DNN建站最常使用的模块,这个模块的新闻功能相当强大,它的三个子模块分别为News  Articles,News  Articles Latest,News  Articles Archives。
先看下模块演示的流程。





News Articles Latest
News Articles一起使用,显示最新新闻标题或标题和简介,如图:




总结:这个模块在细节上的其他功能还有很多,其中在里面修改样式是建站者最喜欢最常用的功能,可以通过修改样式来展现不同的新闻显示,例如在www.alldnnskins.cn这个网站上的DNN新闻页面,他就是一个修改样式后的效果体现,而在每个页面RIGHTpane的最新新闻上传,就是使用了News Article Latest这个模块,它能通过简单的设置达到特定的显示效果,另外这个模块的分类功能非常明了,把他作为一个简单的内容管理模块也行。这个模块的灵活性,大大的提升了DNN网站的设计精美程度,是个十分实用的模块。我提供几个参考网站给大家。
http://www.ucfabc.org 首页的新闻排列显示
http://videogamenews.com  IndustryNews页面




posted @ 2008-07-18 12:13 xspy520 阅读(60) | 评论 (2)编辑
  2008年7月15日
由于新闻模块基本都是收费模块,对于初学者来说,新闻模块加载到一个网站上测试必不可少,在国外我们做网站设计时,使用率最高的是NewsArticle模块,在国内新手使用的是永日发布的免费模块yongri1.00.09,大家在初次使用的时候经常会抱怨老报错,新闻显示不出来,这就需要大家跟一起设置并注意在测试一个模块中应该注意的问题。
安装好永日模块后,大家可以发现生成了四个子模块,此时需要弄清楚的是那些是管理模块,只给管理员使用不会显示出来,哪些是显示模块,供给用户观看的,哪些即能管理又能显示。
YongRi - NewsArticles - List
YongRi - NewsArticles - Manage
YongRi - NewsArticles - Show
YongRi - NewsArticles - Statistics
分析:通过后缀名,可以猜测list是个文章列表,manage是管理的模块,show是个显示模块,
Statistics是个统计模块。
从manage模块开始,首先设置专题管理和分类管理,在这两个设置里面我们可以各添加一个专题名和一个类名,然后开始添加文章,这时会发现所属分类会有类名选项,在所属专题会有勾选框,其他功能和
NewsArticle相同,记住最后的审核选项一定要勾选,不然看不到自己写的文章。提交后文章的标题等属性会以列表的形式显示在Manage中。

一篇文章发表出了,然后要做的工作是如何运用到其他模块中去,首先看List,在它的SETTING中有文章列表显示模块设置,在这里可以指向要显示的模块,一个网站可能会有多个显示的模块,通过类和专题的选择可以通过List显示不同的内容,这个机制在很多模块都有所体现,特别是图片显示模块simple gallery。然后下面的显示设置可以通过自己喜好设置了。更新后我们可以在List列表中发现自己文章标题显示出来,相当于一个TAG。

然后继续看SHOW这个模块,由于是免费版,这里的显示功能肯定有所保留,在设置里看不到选项。但是可以猜出这里放置的标题加部分文章简介的列表。里面的设置也是有导向的机制的,可能类似Newsarticle latest的功能或者更完善。
YongRi - NewsArticles - Statistics这个模块我觉得光看样式我就觉得不好,功能也不个性化,完全照抄Manage样式,在SETTING里如果能自主选择想统计的内容和加一些其他功能会更好,应该做得简洁实用些。

最后我发现貌似有些功能不完整,于是看了看magage下的setting,这里面果然有评论和整体设置的功能,但是我觉得最应该有的是模板的自定义功能,这个功能比较活,用户也能通过代码自主改变显示样式,可能是这个模块MANAGE中个统计显示规定死了整个样式的灵活。但是总得来说,这个模块体现的功能还是很多的。
最后运用这个模块的时候还要注意一开始设置这个模块的权限问题,管理赋权于admin,发表权限赋予ADMIN和注册用户,观看的权限赋予所有用户。

posted @ 2008-07-15 12:36 xspy520 阅读(80) | 评论 (0)编辑
  2008年7月8日

我先把XMOD实现的一般简单效果显示出来

上图是一个简单的用户分析需求表,通过点击Submit提交,可以实现用户所填写的内容自动发送到管理员邮箱中。
下面我将操作过程简单写下。
点击XMOD FORM VIEW选择manage form,进入到编辑的页面

这里我们可以选择创建一个新表,或者编辑修改一个旧表,删除一个表以及选择编辑的方式。通常我们使用的是plain text.通过代码输入生成表格。
我们加入以下一段代码:
<form>
  <controls>
    <input ref="FirstName">
      <label>First Name:</label>
    </input>
    <input ref="LastName">
      <label>Last Name:</label>
    </input>
    <input ref="Email">
      <label>E-mail:</label>
<validate type="regexp" expression="\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*" message="格式错误!" text="*" />
    </input>
    <input ref="Phone">
      <label>Phone:</label>
    </input>
    <input ref="StreetAddress">
      <label>Street Address:</label>
    </input>
    <input ref="City">
      <label>City:</label>
    </input>
    <select1 ref="State" appearance="minimal">
      <label>State:</label>
      <items>
        <item>
          <label>Select State</label>
          <value>Select State</value>
        </item>
        <item>
          <label>Alabama</label>
          <value>Alabama</value>
        </item>
        <item>
          <label>Alaska</label>
          <value>Alaska</value>
        </item>
        <item>
          <label>Arizona</label>
          <value>Arizona</value>
        </item>
        <item>
          <label>Arkansas</label>
          <value>Arkansas</value>
        </item>
        <item>
          <label>California</label>
          <value>California</value>
        </item>
        <item>
          <label>Colorado</label>
          <value>Colorado</value>
        </item>
        <item>
          <label>Connecticut</label>
          <value>Connecticut</value>
        </item>
        <item>
          <label>Delaware</label>
          <value>Delaware</value>
        </item>
        <item>
          <label>District Of Columbia</label>
          <value>District Of Columbia</value>
        </item>
        <item>
          <label>Florida</label>
          <value>Florida</value>
        </item>
        <item>
          <label>Georgia</label>
          <value>Georgia</value>
        </item>
        <item>
          <label>Hawaii</label>
          <value>Hawaii</value>
        </item>
        <item>
          <label>Idaho</label>
          <value>Idaho</value>
        </item>
        <item>
          <label>Illinois</label>
          <value>Illinois</value>
        </item>
        <item>
          <label>Indiana</label>
          <value>Indiana</value>
        </item>
        <item>
          <label>Iowa</label>
          <value>Iowa</value>
        </item>
        <item>
          <label>Kansas</label>
          <value>Kansas</value>
        </item>
        <item>
          <label>Kentucky</label>
          <value>Kentucky</value>
        </item>
        <item>
          <label>Louisiana</label>
          <value>Louisiana</value>
        </item>
        <item>
          <label>Maine</label>
          <value>Maine</value>
        </item>
        <item>
          <label>Maryland</label>
          <value>Maryland</value>
        </item>
        <item>
          <label>Massachusetts</label>
          <value>Massachusetts</value>
        </item>
        <item>
          <label>Michigan</label>
          <value>Michigan</value>
        </item>
        <item>
          <label>Minnesota</label>
          <value>Minnesota</value>
        </item>
        <item>
          <label>Mississippi</label>
          <value>Mississippi</value>
        </item>
        <item>
          <label>Missouri</label>
          <value>Missouri</value>
        </item>
        <item>
          <label>Montana</label>
          <value>Montana</value>
        </item>
        <item>
          <label>Nebraska</label>
          <value>Nebraska</value>
        </item>
        <item>
          <label>Nevada</label>
          <value>Nevada</value>
        </item>
        <item>
          <label>New Hampshire</label>
          <value>New Hampshire</value>
        </item>
        <item>
          <label>New Jersey</label>
          <value>New Jersey</value>
        </item>
        <item>
          <label>New Mexico</label>
          <value>New Mexico</value>
        </item>
        <item>
          <label>New York</label>
          <value>New York</value>
        </item>
        <item>
          <label>North Carolina</label>
          <value>North Carolina</value>
        </item>
        <item>
          <label>North Dakota</label>
          <value>North Dakota</value>
        </item>
        <item>
          <label>Ohio</label>
          <value>Ohio</value>
        </item>
        <item>
          <label>Oklahoma</label>
          <value>Oklahoma</value>
        </item>
        <item>
          <label>Oregon</label>
          <value>Oregon</value>
        </item>
        <item>
          <label>Pennsylvania</label>
          <value>Pennsylvania</value>
        </item>
        <item>
          <label>Rhode Island</label>
          <value>Rhode Island</value>
        </item>
        <item>
          <label>South Carolina</label>
          <value>South Carolina</value>
        </item>
        <item>
          <label>South Dakota</label>
          <value>South Dakota</value>
        </item>
        <item>
          <label>Tennessee</label>
          <value>Tennessee</value>
        </item>
        <item>
          <label>Texas</label>
          <value>Texas</value>
        </item>
        <item>
          <label>Utah</label>
          <value>Utah</value>
        </item>
        <item>
          <label>Vermont</label>
          <value>Vermont</value>
        </item>
        <item>
          <label>Virginia</label>
          <value>Virginia</value>
        </item>
        <item>
          <label>Washington</label>
          <value>Washington</value>
        </item>
        <item>
          <label>West Virginia</label>
          <value>West Virginia</value>
        </item>
        <item>
          <label>Wisconsin</label>
          <value>Wisconsin</value>
        </item>
        <item>
          <label>Wyoming</label>
          <value>Wyoming</value>
        </item>
      </items>
    </select1>
    <input ref="Zip">
      <label>Zip:</label>
    </input>
    <textarea ref="QuestionsConcerns" cols="1" rows="6">
      <label>Questions/Concerns</label>
    </textarea>
 
<email target="xspy520@hotmail.com" from="{Email}"
subject="ContactUs" sendrule="add,update">
      <content format="html">
         <literal>
          <label>First Name:</label><xmod:field name="FirstName" uselabel="true"/><br />
          <label>Last Name:</label><xmod:field name="LastName" uselabel="true"/><br />
          <label>E-mail:</label><xmod:field name="Email" uselabel="true"/><br />
          <label>Phone:</label><xmod:field name="Phone"  uselabel="true"/><br />
           <label>StreetAddress:</label><xmod:field name="StreetAddress"  uselabel="true"/><br />
           <label>City:</label><xmod:field name="City"  uselabel="true"/><br />
            <label>State:</label><xmod:field name="State"  usevalue="true"/><br />
             <label>Zip:</label><xmod:field name="Zip"  uselabel="true"/><br />
          <label>Questions/Concerns:</label><xmod:field name="QuestionsConcerns"  uselabel="true"/><br />
        </literal>
      </content>
    </email>
</controls>
</form>
 
输入完成后,当用户填写相关内容时,通过点击Submit可以使得信息全部传到管理员邮箱“xspy520@hotmail.com”,通常在一个表完成时,都必须测试邮箱是否联通。
通过点击Save Form我们可以将表格显示出来。当然这个模块上还有其它许多功能比如加表情,插入文件等等,大家在有所需求后,一般的表格都能通过编辑展现出来。

posted @ 2008-07-08 11:42 xspy520 阅读(96) | 评论 (0)编辑
  2008年7月7日
XMOD模块实现的主要是客户需求分析表的功能,它在安装到DNN后生成两个模块XMOD和XMOD FORM VIEW两个子模块。顾名思义一个是编辑一个是显示。
这个模块功能十分强大,在此感谢莉莉帮忙整理出了这些使用操作和基本功能。
 

一)Manage Form->1.Create New Form(创建新的表格)-.点击Create New Form按钮->进入Form Settings and Permissions页面只用填写Form Name(表格名称)->点击Next即建好一个表格框架;在Add Control to Form:设计表格选择需要的控件,然后添加,先介绍常见的4种:

1.1)Text box(如图1),一般只需要填写Ref‘Label(必填),如果一定要客户填写则Required选择ture ,然后Apply.

1.2)Multiline Textbox Textbox控件相同,只是文本框中可以输入多行文字,而Textbox只能输入1行文字

1.3)Dropdown List 下拉列表 select1中填写RefLabelAppearance(预览时的效果)有两个值:minimal(显示下拉框)full(显示单选按钮),在这里我们要用minimalitems中在Label中填写所需选项,每写一个按Add按钮添加,显示在ListItems列表中;如果ListItems列表中输入内容不需要,可以选中该内容点击按钮Remove即可,完成添加内容后Apply
1.4)Radio Button List 单选按钮,用法与Dropdown List相同,区别在于Appearance中填写full
1.5)Multi-Select List   复选框(多选按钮)用法与Dropdown List相同,区别在于Appearance中将默认的compact改为full,预览显示小方形选框;若用默认值则显示下拉框样式,按shift键可进行多选,但样式没有填写full清晰美观
1.6)Single-Select List   单选框与单选按钮功能用法相同,区别在于Appearance选用 compac
1.7)Add Button 添加按钮,该按钮有3种功能(普通按钮button、图像按钮imagebutton、连接          按钮linkbutton);添加按钮后,在Text中输入按钮上显示的名称;选择Display按钮功能,如果选择imagebutton,则在Image URL中填写按钮显示的图片路径;选择linkbutton,则在Image URL中填写按钮所要连接的路径;按钮的高宽可以根据需要来规定,最后Apply
注意:在一个表格中不能同时应用Add Button中的3个功能按钮,预览时只会显示最前面的一个功能按钮。

1.8)Apporve Button赞成按钮、Cancel Button取消按钮、Command Button命令按钮

Delete Button删除按钮、UnapproveButton批准按钮、Update Button上传按钮这些按钮用法与Add Button相同,只是功能不一样
 2.Edit Form (选择其中建好的表格进行编辑)
  3.Delete Form(删除选中的表格)

二)添加完表格后,一定要保存表格。返回初始页面。如图:


三)Manage Templates-Add New Template(如图)——


填写Template Name,选择Template Type3种(),选择要显示的表-> Save Template,最终效果:将客户填写的信息记录显示页面

四)然后添加XMod FormView模块——Configure Your XMod Module(如图)


——〉选择需要显示的表——Save Changes即可

最终效果:改显示出来

注意:建表需要与客户有来往的话,要在添加控件时加上Email,表信息的获取也是用Email来完成的,这样不用在页面记录信息,占页面面积。


XMOD FORM VIEW的设置

,添加该模块,在XMod模块基础上添加.

 步骤:XMod倒三角——〉点击Administrative进行设置——〉在Starter Packages中选择Freeback From——〉点击Install Package ——〉在点击Install/Update Module该模块就安装成功了(在Starter Packages中还有FAQ形式可选择,编辑方式与其一样,但添加FAQ在模块中不会有新模块增加,在编辑表时会发现多了个FAQ表)

,Configure Your XMod Module ->Data Entry Form中选择需要显示的表->Save Changes 表格即显示出来



注:该模块要与XMod一起使用。

下节我将写个图片显示的实例出来,欢迎大家提出意见。

posted @ 2008-07-07 16:36 xspy520 阅读(62) | 评论 (0)编辑
  2008年7月5日
      国外用户做的网站不论是用ASP做的,FLASH做的,还是DNN做的,风格都是很简洁明了的,讲究实用性,做出来的给人感觉一般都很大气。
      而国内的网站给人感觉就是太讲究商业化了,广告五花八门,内容多而复杂,但国内的网站更加喜欢贴近人们民俗风情,例如鲜花网站,一般就会有花名物语,在买花的时候会告诉买家几只代表什么意思,什么花什么时候送,国内用户用着会比较贴心,估计这就是一些本质的区别吧。
     在做一个DNN网站前,客户通常给些要求,例如一个国外客户通常有这么几个要求。
     1.转网站。通常是客户将原来的其他网站转换为DNN模块制作的网站,在这类网站制作前,材料已经很齐全了,可以照原网站搬,但是在COPY之前必须先分析清楚原网站上,哪些页面功能可以用模块实现,是否能完全实现原网站上的效果,不能实现的页面能否找到未知的模块实现,实在不行就用HTML模块来实现。
      在转网站的时候还需要注意些问题,特别是字体样式,模块设置及页面整体设置。
      字体样式是最头疼最容易被忽略的问题,所以用火狐的功能来辅助是很必要的,而且在修改字体的时候DNN网站通常要在皮肤里面设置字体样式才能正确显示。
      模块设置通常是先让它实现它特定的功能后,在对其样式做些修改,例如对新闻模块NEWSARETICAL的样式设置可以根据不同的客户需求显示不同的样式,这需要对CSS和HTML熟悉,在模板里面修改或根据提示添加功能是件很有创造力的事情,所以每个新模块的测试阶段的学习都十分重要,见的模块多了,自然对其他新模块设置有所了解。
      网站完成后,还必须换个IE浏览器来查看整体页面效果,然后就是页面的整体设置了,容器CONTAINER属于皮肤做的,可以根据整体页面的需求来选择是否显示,然后就是定宽的问题了,由于模块通常都是一块块的(非专业术语),就像几个积木拼凑起来一样,如何使整个页面体现出统一性和完整性就显得十分重要,这里通常除了在皮肤中定宽度外,在外面也要加个不显示出来的HTML制作个空表定宽,这样的定宽通常是在LeftPane和RightPane加同一个宽来“挤”中间的显示宽度,使得整个网站统一美观。
     2.设计网站,客户仅仅提供他要建站的内容标题,甚至只告诉你他想建什么类型的网站,那么这时,除了设计出一个好皮肤,显示其完整的样式,例如菜单的显示方式等都是十分重要的,在页面内容标题没有的情况下还要尽量找些相关内容来填充菜单,一个菜单至少需要6个标题页面才能显的美观大方,有时也要帮其构思内容放置,如何将此网站做的吸引人,内容充实,客户满意都是一个网站设计者必须考虑到的。
     3.模块的运用,DNN客户通常会找些新模块需要测试,然后通过设置了更改其原DNN网站的内容或显示,无论是根据需求按键提示一步步做,还是要运用代码来显示效果,测试人员都必须站在两个角度测试,如果做为一个管理者,模块是否方便管理人员操作,操作过程复杂程度,操作过程中帮助提示可能带给管理者误区,都是我们必须注意的。然后作为一个用户,我们是否能根据提示一步步的使用模块,最终达到的是否是我们想要的效果,使用过程中的冗余步骤和不明了提示,都是需要找出并记录的,这样无论是客户提供的模块还是公司制作的模块,都能通过测试查到模块的全部功能和需要修改的地方,然后将客户想要实现的功能安装上去,所以通常一个新模块来的时候,第一时间段就是测试模块功能,然后分析出来,最后在给用户使用,如有不合适的地方和错误的地方,可以提前避免。模块的运用测试确实是个很重要步骤。
     一个DNN网站,它的外表美在于皮肤设计的精美程度,气质美在于网站设计的整体性,内在美在于模块功能的完美实现。


posted @ 2008-07-05 22:34 xspy520 阅读(114) | 评论 (1)编辑