<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
<title>AutoTestServiceGroup Blog</title>
<link>http://autotestgroup.com/ru/blog/</link>
<description></description>
<lastBuildDate>Sun, 19 Sep 2010 21:10:26 +0300</lastBuildDate>
<item><title>TestComplete: Использование необъявленных переменных в JScript</title>
<link>http://autotestgroup.com/ru/blog/87.html</link>
<description>&lt;!--[if gte mso 9]&gt;&lt;xml&gt; &lt;w:WordDocument&gt; &lt;w:View&gt;Normal&lt;/w:View&gt; &lt;w:Zoom&gt;0&lt;/w:Zoom&gt; &lt;w:TrackMoves /&gt; &lt;w:TrackFormatting /&gt; &lt;w:PunctuationKerning /&gt; &lt;w:ValidateAgainstSchemas /&gt; &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt; &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt; &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt; &lt;w:DoNotPromoteQF /&gt; &lt;w:LidThemeOther&gt;RU&lt;/w:LidThemeOther&gt; &lt;w:LidThemeAsian&gt;X-NONE&lt;/w:LidThemeAsian&gt; &lt;w:LidThemeComplexScript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt; &lt;w:Compatibility&gt; &lt;w:BreakWrappedTables /&gt; &lt;w:SnapToGridInCell /&gt; &lt;w:WrapTextWithPunct /&gt; &lt;w:UseAsianBreakRules /&gt; &lt;w:DontGrowAutofit /&gt; &lt;w:SplitPgBreakAndParaMark /&gt; &lt;w:DontVertAlignCellWithSp /&gt; &lt;w:DontBreakConstrainedForcedTables /&gt; &lt;w:DontVertAlignInTxbx /&gt; &lt;w:Word11KerningPairs /&gt; &lt;w:CachedColBalance /&gt; &lt;/w:Compatibility&gt; &lt;w:BrowserLevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt; &lt;m:mathPr&gt; &lt;m:mathFont m:val=&quot;Cambria Math&quot; /&gt; &lt;m:brkBin m:val=&quot;before&quot; /&gt; &lt;m:brkBinSub m:val=&quot;&amp;#45;-&quot; /&gt; &lt;m:smallFrac m:val=&quot;off&quot; /&gt; &lt;m:dispDef /&gt; &lt;m:lMargin m:val=&quot;0&quot; /&gt; &lt;m:rMargin m:val=&quot;0&quot; /&gt; &lt;m:defJc m:val=&quot;centerGroup&quot; /&gt; &lt;m:wrapIndent m:val=&quot;1440&quot; /&gt; &lt;m:intLim m:val=&quot;subSup&quot; /&gt; &lt;m:naryLim m:val=&quot;undOvr&quot; /&gt; &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt; &lt;w:LatentStyles DefLockedState=&quot;false&quot; DefUnhideWhenUsed=&quot;true&quot; DefSemiHidden=&quot;true&quot; DefQFormat=&quot;false&quot; DefPriority=&quot;99&quot; LatentStyleCount=&quot;267&quot;&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;0&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Normal&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;heading 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 3&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 4&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 5&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 6&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 7&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 8&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 9&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 3&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 4&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 5&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 6&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 7&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 8&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 9&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;35&quot; QFormat=&quot;true&quot; Name=&quot;caption&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;10&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Title&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;1&quot; Name=&quot;Default Paragraph Font&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;11&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Subtitle&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;22&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Strong&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;20&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Emphasis&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;59&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Table Grid&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Placeholder Text&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;1&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;No Spacing&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Revision&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;34&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;List Paragraph&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;29&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Quote&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;30&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Intense Quote&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 1&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 2&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 3&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 3&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 3&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 3&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 3&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 3&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 3&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 3&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 3&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 3&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 3&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 3&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 3&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 3&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 4&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 4&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 4&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 4&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 4&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 4&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 4&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 4&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 4&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 4&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 4&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 4&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 4&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 4&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 5&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 5&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 5&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 5&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 5&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 5&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 5&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 5&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 5&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 5&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 5&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 5&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 5&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 5&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 6&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 6&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 6&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 6&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 6&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 6&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 6&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 6&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 6&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 6&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 6&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 6&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 6&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 6&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;19&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Subtle Emphasis&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;21&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Intense Emphasis&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;31&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Subtle Reference&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;32&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Intense Reference&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;33&quot; SemiHidden=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Book Title&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;37&quot; Name=&quot;Bibliography&quot; /&gt; &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; QFormat=&quot;true&quot; Name=&quot;TOC Heading&quot; /&gt; &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt; /* Style Definitions */ table.MsoNormalTable {mso-style-name:&quot;Обычная таблица&quot;; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:&quot;&quot;; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:11.0pt; font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:&quot;Times New Roman&quot;; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:&quot;Times New Roman&quot;; mso-bidi-theme-font:minor-bidi;} &lt;/style&gt; &lt;![endif]--&gt; &lt;p class=&quot;MsoNormal&quot;&gt;Язык &lt;span lang=&quot;EN-US&quot; style=&quot;&quot;&gt;JScript&lt;/span&gt; позволяет использовать необъявленные переменные в скриптах. Безусловно, это плохо, так как при первой же попытке считать значение этой переменной мы получим ошибку &amp;quot;Microsoft JScript runtime error. &lt;span lang=&quot;EN-US&quot; style=&quot;&quot;&gt;VAR_NAME&lt;/span&gt; is undefined&amp;quot;, где &lt;strong style=&quot;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;&quot;&gt;VAR_NAME&lt;/span&gt;&lt;/strong&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;&quot;&gt; &amp;ndash; &lt;/span&gt;имя необъявленной переменной.&lt;/p&gt; &lt;p class=&quot;MsoNormal&quot;&gt;Тем не менее, необъявленные переменные можно использовать в цикле &lt;strong style=&quot;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;&quot;&gt;FOR&lt;/span&gt;&lt;/strong&gt;. При этом переменная автоматически будет создана и проинициализирована. Есть лишь одна проблема: при выходе из цикла эта переменная не будет уничтожена.&lt;/p&gt; &lt;p class=&quot;MsoNormal&quot;&gt;</description>
<guid>87.html</guid>
<pubDate>Sun, 19 Sep 2010 21:10:26 +0300</pubDate>
</item>
<item><title>Selenium-RC (Java): Основные операции в действии (Часть 3)</title>
<link>http://autotestgroup.com/ru/blog/86.html</link>
<description>&lt;h2&gt;Работа с модальными окнами&lt;/h2&gt; &lt;p&gt;&lt;br /&gt; &lt;br /&gt; Отдельно стоит рассмотреть такой момент как работа Selenium-а с различными модальными окнами. В данном случае подразумеваются диалоги, которые инициируются вызовом функций вроде openDialog в JScript. В результате работы таких функций открывается новая веб-старница в отдельном модальном окне. Также, как правило подобные окна характеризуются наличием идентификатора.&lt;br /&gt; &lt;br /&gt; Так вот, основная трудность заключается в том,&amp;nbsp; </description>
<guid>86.html</guid>
<pubDate>Thu, 27 May 2010 10:18:22 +0300</pubDate>
</item>
<item><title>Selenium: Подбираем локаторы</title>
<link>http://autotestgroup.com/ru/blog/85.html</link>
<description>&lt;p&gt;Знание типов локаторов - это только первый шаг к умению рационально их использовать. Умение же ими пользоваться - один из ключевых навыков работы с Selenium-ом, так как всё остальное, что необходимо знать, сводится к изучению библиотеки (а основного функционала там немного) и ряда частных случаев, как правило, обходных маневров. Всё остальное уже больше относится к умению работать с тем или иным языком программирования. Поэтому в данном разделе мы рассмотрим, какой локатор и в каком случае удобнее подобрать. </description>
<guid>85.html</guid>
<pubDate>Wed, 10 Mar 2010 19:24:44 +0200</pubDate>
</item>
<item><title>Selenium-RC (Java): Основные операции в действии (Часть 2)</title>
<link>http://autotestgroup.com/ru/blog/84.html</link>
<description>&lt;h2&gt;Работа с полем загрузки файлов&lt;/h2&gt; &lt;p&gt;&lt;br /&gt; &lt;br /&gt; Одним из каверзных стандартных элементов управления на веб-страницах с точки зрения работы Selenium-a является поле загрузки файла. </description>
<guid>84.html</guid>
<pubDate>Mon, 07 Dec 2009 14:54:36 +0200</pubDate>
</item>
<item><title>Selenium-RC (Java): Основные операции в действии (Часть 1)</title>
<link>http://autotestgroup.com/ru/blog/83.html</link>
<description>&lt;p&gt;В стандартной документации к селениуму достаточно много примеров тестов, но они в основном направлены на то, чтобы показать структуру тестов, а также некоторый частный случай использования тех или иных операций. При этом мало внимания уделяется обзору имеющихся команд. И это в принципе неудивительно, так как по сути мы используем один клиентский класс, у которого определены все необходимые нам методы. И уже в зависимости от конкретной задачи мы просто ищем нужный метод, который бы эту задачу выполнил. Тем не менее, мелких деталей всегда хватает и на их разбор может уйти много времени, что может вызвать множество проблем, особенно для начинающих. Поэтому, целью данного поста является ознакомление с основными операциями селениума, с которыми так иил иначе придется иметь дело, а также описание возможных нюансов, которые могут возникнуть.</description>
<guid>83.html</guid>
<pubDate>Mon, 07 Dec 2009 14:50:39 +0200</pubDate>
</item>
<item><title>Selenium: Вспомогательные инструменты</title>
<link>http://autotestgroup.com/ru/blog/82.html</link>
<description>&lt;p&gt;Одной из особенностей Selenium, которая отличает его от &amp;quot;традиционных&amp;quot; средств автоматизации функционального тестирования на уровне UI, является то, что Selenium не имеет своей выделенной интегрированной среды разработки. Отчасти это обусловлено тем, что тот же Selenium-RC представляет собой сервер, который выполняет команды + клиентская библиотека, портированная на некоторый язык программирования. Соответственно, тесты уже пишутся в среде, которая определяется языком программирования. Такой разброс в используемых средств влечет за собой отсутствие встроенных в IDE различных генераторов, визардов, которые могли бы упростить написание тестов. Тем не менее, есть ряд задач, которые решать приходится регулярно. Тот же подбор локатора - довольно распространенная задача. Фактически одна из ключевых. Поскольку нет выделенного IDE, то в подобных задачах нам на помощь приходят другие инструменты. Итак, какие же инструменты нам могут упростить жизнь</description>
<guid>82.html</guid>
<pubDate>Mon, 30 Nov 2009 16:35:33 +0200</pubDate>
</item>
<item><title>Selenium: знакомимся с локаторами</title>
<link>http://autotestgroup.com/ru/blog/81.html</link>
<description>&lt;p&gt;При работе с Селениумом практически первое, с чем придется столкнуться - это локаторы. Что это такое? Локатор - это строка, уникально идентифицирующая UI-элемент. Когда вы делаете клик мышкой, ввод текста и прочие действия, вы эти действия выполняете над вполне конкретным объектом. Селениум поступает так же. Но поскольку он не умеет читать ваши мысли, то ему надо четко указать объект, для которого надо применить то или иное действие.</description>
<guid>81.html</guid>
<pubDate>Mon, 16 Nov 2009 14:02:00 +0200</pubDate>
</item>
<item><title>Ruby: Cucumber + Rake + немного полезностей</title>
<link>http://autotestgroup.com/ru/blog/79.html</link>
<description>&lt;p&gt;Cucumber - это просто тестовый движок на Ruby, который позволяет создавать тесты, используя &amp;quot;human language&amp;quot; инструкции. Но это один из аспектов. Но есть и другой аспект - это такая же вспомогательная утилита на Ruby, как и многие другие. И как многие другие Ruby-компоненты, Cucumber вписывается в определенную инфраструктуру. В частности, можно определить некоторые специфические задачи, которые он может выполнять. Помимо этого, иногда полезно получить информацию о том, собирается ли набор тестов без ошибок, какие тесты относятся к той или иной группе, какие шаги еще не реализованы и т.п. Наличие подобных &amp;quot;фишек&amp;quot; помогает во многом. </description>
<guid>79.html</guid>
<pubDate>Tue, 27 Oct 2009 13:04:08 +0200</pubDate>
</item>
<item><title>Бесконечный цикл запуска тестов. Практика \'чертового колеса\'</title>
<link>http://autotestgroup.com/ru/blog/78.html</link>
<description>&lt;p&gt;Зачастую, когда объем автотестов становится весьма большим, достаточно тяжело уделять внимание запускам тестов. Тесты выполняются долго, часть проблем выявляется только после серии прогонов тестов и т.д. Более того, весьма полезно, чтобы результаты приходили регулярно и изменения, внесенные в код подхватывались по мере их внесения. Да и по сути, запуск тестов - это очередная рутина, которую хорошо бы делать регулярно, но в итоге всё делается, как получится. Соответственно, надо бы это как-то автоматизировать. Тут как раз подходит практика &amp;quot;Чёртового колеса&amp;quot;</description>
<guid>78.html</guid>
<pubDate>Thu, 22 Oct 2009 13:19:50 +0300</pubDate>
</item>
<item><title>Тестовый движок Cucumber (Ruby)</title>
<link>http://autotestgroup.com/ru/blog/76.html</link>
<description>&lt;p&gt;Зачастую решение по автоматизированному тестированию становится достаточно сложным, что для написания тестов и всего вспомогательного кода требуются навыки программирования, причем иногда даже не начального уровня, а немного повыше. В то же время, имеет место тенденция к упрощению работы с автотестами. Это достигается путем добавления различных визардов, созданию определенных подходов и движков, реализующих данный подход. В частности популярен т.н. keyword-driven подход, когда тесты представляют собой последовательность ключевых слов, структурированную в таблицах. Но есть еще более заковыристый подход, при котором тесты представляются в виде обычных инструкций, написанных в виде обычного текста, для которых есть определенная реализация на уровне программного кода. Для Ruby есть такой движок, именуемый Cucumber. </description>
<guid>76.html</guid>
<pubDate>Tue, 13 Oct 2009 17:15:34 +0300</pubDate>
</item>
<item><title>Selenium-RC: дружим с CSS</title>
<link>http://autotestgroup.com/ru/blog/74.html</link>
<description>&lt;p&gt;Безусловно, XPath-локатор является одним из наиболее универсальных и наиболее точных локаторов. Но к этой универсальности добавляется один из главнейших недостатков данного типа локаторов - низкая скорость обнаружения данного элемента. Это наиболее хорошо проявляется под IE, в то время как тот же Firefox работает нормально. Это связано с внутренними особенностями браузеров, в частности в способе аллоцирования элементов страницы. Но суть не в этом. Суть в том, что Селениум-тесты, которые интенсивно используют XPath работают крайне медленно под IE. И это вызывает ряд проблем как со скоростью выполнения тестов, так и с качеством этих тестов, особенно при работе с динамическим контентом. Как альтернатива XPath могут рассматриваться CSS локаторы. Что с ними можно делать? </description>
<guid>74.html</guid>
<pubDate>Tue, 22 Sep 2009 10:32:08 +0300</pubDate>
</item>
<item><title>Silktest: Вывод Результатов В Собственном Формате</title>
<link>http://autotestgroup.com/ru/blog/73.html</link>
<description>&lt;p&gt;При любом виде автоматизированного тестирования неотъемлемой частью является информативный вывод результатов, так как мало просто осуществить прогон, нужно еще и суметь интерпретировать результаты. Рассмотрим решение данной задачи на примере SilkTest.&lt;/p&gt; &lt;p&gt;</description>
<guid>73.html</guid>
<pubDate>Tue, 03 Feb 2009 13:55:33 +0200</pubDate>
</item>
<item><title>SilkTest: Работа с пользовательскими кнопками</title>
<link>http://autotestgroup.com/ru/blog/71.html</link>
<description>&lt;p&gt;Кнопка (PushButton), казалось бы, один из самых простых элементов управления, тоже может доставить хлопоты. В этом посте мы рассмотрим случаи, когда не срабатывает метод Click() и способы решения этой проблемы.&lt;/p&gt; &lt;p&gt;</description>
<guid>71.html</guid>
<pubDate>Mon, 26 Jan 2009 13:29:35 +0200</pubDate>
</item>
<item><title>Selenium RC: Дружим с XPath</title>
<link>http://autotestgroup.com/ru/blog/70.html</link>
<description>&lt;p&gt;При работе с Selenium доступ к объектам осуществляется через локаторы - строки, идентифицирующие объект, над которым проводится то или иное действие. Наиболее удобными и наиболее быстрыми являются локаторы, определенные по ID объекта ( у каждого объекта на HTML странице может быть определен атрибут ID, причем он должен быть уникальным ). Ну уж если не определен ID, то как минимум для элементов форм есть атрибуты Name, через которые тоже достаточно удобно и просто работать. Но в общем случае, приходится работать с большим многообразием объектов, причем и действия приходится делать самые разнообразные. Например:&lt;/p&gt; &lt;ul&gt;&lt;br /&gt;     &lt;li&gt;на странице есть несколько полей с одинаковым атрибутом Name, но у разных форм и нужно работать с конкретным полем конкретной формы.&lt;/li&gt;     &lt;li&gt;На странице множество объектов сходной структуры и их надо обработать одинаково (например, очистить все текстовые поля)&lt;/li&gt;     &lt;li&gt;Нужно обработать одинаковым образом все объекты, которые характеризуются определенным текстов некоторых дочерних объектов (например, мы знаем заголовки таблицы, а нужно сделать клик на ссылке, которая находится на том же уровне)&lt;/li&gt; &lt;/ul&gt; &lt;p&gt;&lt;br /&gt; Каждый отдельно взятый случай решает данные проблемы своими путями, но более-менее универсальным решением является использование XPath. </description>
<guid>70.html</guid>
<pubDate>Mon, 26 Jan 2009 12:46:27 +0200</pubDate>
</item>
<item><title>Учебник по SilkTest</title>
<link>http://autotestgroup.com/ru/blog/68.html</link>
<description>&lt;p&gt;В раздел &lt;a target=&quot;_self&quot; href=&quot;http://autotestgroup.com/ru/materials/&quot;&gt;Материалы &lt;/a&gt;добавлен &lt;a href=&quot;http://autotestgroup.com/ru/materials/19.html&quot;&gt;Учебник по Borland SilkTest&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Приятного изучения!&lt;/p&gt;</description>
<guid>68.html</guid>
<pubDate>Wed, 14 Jan 2009 16:00:13 +0200</pubDate>
</item>
<item><title>SilkTest: секрет 2 - закрытие недоступных окон</title>
<link>http://autotestgroup.com/ru/blog/66.html</link>
<description>&lt;p&gt;Самый простой и очевидный способ закрытия окна в &lt;strong&gt;SilkTest &lt;/strong&gt;&amp;ndash; это использование метода &lt;strong&gt;Close()&lt;/strong&gt;. Однако не всегда этот метод сработает. Попробуйте, например, открыть окно Блокнота, написать в нем какой-то текст, а затем выполнить следующий код:&lt;br /&gt; &lt;font face=&quot;Courier New&quot;&gt; [ ] Notepad.SetActive ()&lt;br /&gt; [ ] Notepad.Close ()&lt;br /&gt; &lt;/font&gt; &lt;br /&gt; Блокнот выдаст сообщение о том, что в документ были внесены изменения и будет ждать действий пользователя, а &lt;strong&gt;SilkTest&lt;/strong&gt; выдаст в логе сообщение об ошибке&lt;br /&gt; &lt;br /&gt; &lt;font face=&quot;Courier New&quot; color=&quot;#ff0000&quot;&gt; *** Error: Window cannot be closed&lt;/font&gt;&lt;br /&gt; &lt;br /&gt; Безусловно, подобные ситуации обычно должны обрабатываться, однако что если нам надо закрыть окно в любом случае? В этом случае нам на помощь приходит метод &lt;strong&gt;Kill()&lt;/strong&gt;, который попросту уничтожит окно. По какой-то причине этот метод не описан нигде в справочной системе &lt;strong&gt;SilkTest&lt;/strong&gt;'a, однако его можно найти в файле &lt;strong&gt;winclass.inc&lt;/strong&gt;.&lt;br /&gt; &lt;br /&gt; &lt;font face=&quot;Courier New&quot;&gt; [ ] Notepad.SetActive ()&lt;br /&gt; [ ] Notepad.Kill ()&lt;/font&gt;&lt;/p&gt;</description>
<guid>66.html</guid>
<pubDate>Tue, 13 Jan 2009 12:37:13 +0200</pubDate>
</item>
<item><title>Статья: Непрерывная интеграция для автоматизированного black-box тестирования</title>
<link>http://autotestgroup.com/ru/blog/65.html</link>
<description>&lt;p&gt;В разделе &amp;quot;&lt;a href=&quot;http://autotestgroup.com/ru/materials/&quot;&gt;Материалы&lt;/a&gt;&amp;quot; появилась новая статья &amp;quot;&lt;a href=&quot;http://autotestgroup.com/ru/materials/18.html&quot;&gt;Непрерывная интеграция для автоматизированного black-box тестирования&lt;/a&gt;&amp;quot;. На практическом примере показывается возможность связывать между собой системы, участвующие в процессе автоматизированного тестирования, но при этом изначально не интегрированные между собой. В дальнейшем планируется серия публикаций по данной тематике с  описанием интеграционных решений для других аналогичных систем.&lt;/p&gt; &lt;p&gt;Отдельно хочется выразить благодарность автору проекта &lt;a href=&quot;http://openquality.ru&quot;&gt;OpenQuality.ru&lt;/a&gt;  за то, что добровольно согласился осуществить вычитку материала и исправление различных ошибок.&lt;/p&gt;</description>
<guid>65.html</guid>
<pubDate>Sat, 10 Jan 2009 13:47:30 +0200</pubDate>
</item>
<item><title>С Новым 2009-м годом!</title>
<link>http://autotestgroup.com/ru/blog/63.html</link>
<description>&lt;p&gt;Приближается новый 2009-й год и команда &lt;strong&gt;Automated Testing Service Group&lt;/strong&gt; поздравляет всех с Новым Годом. Пусть новый год принесет больше возможностей и больше достижений. Успехов всем и процветания!&lt;/p&gt;</description>
<guid>63.html</guid>
<pubDate>Wed, 31 Dec 2008 23:25:33 +0200</pubDate>
</item>
<item><title>О проекте it4business.ru</title>
<link>http://autotestgroup.com/ru/blog/62.html</link>
<description>&lt;p&gt;Проект &lt;a href=&quot;http://it4business.ru/&quot; target=&quot;_blank&quot;&gt;it4business &lt;/a&gt;- один из лучших порталов в рунете, посвященный тестированию, управлению и качеству.&lt;/p&gt; &lt;p&gt;Если вы еще не знакомы с ним &amp;mdash; сейчас самое время!&lt;/p&gt; &lt;p&gt;На сайте можно найти множество статей от ведущих специалистов, подписаться на еженедельную рассылку новостей.&lt;/p&gt; &lt;p&gt;Это уже третья инкарнация идеи специализированного проекта для специалистов IT-отрасли. Вначале был проект для тестировщиков, потом он стал проектом про тестирование, а сейчас существует как проект для IT-менеджеров, чтобы со временем, возможно, развернуться до проекта про IT и программную инженерию и взаимоотношения с бизнесом.&lt;/p&gt; &lt;p&gt;На &lt;a href=&quot;http://it4business.ru/forum/&quot; target=&quot;_blank&quot;&gt;форуме сайта&lt;/a&gt; можно найти ответы на многие вопросы, связанные с тематикой сайта, задать свой вопрос или делиться своим опытом с другими.&lt;/p&gt;</description>
<guid>62.html</guid>
<pubDate>Wed, 24 Dec 2008 11:53:39 +0200</pubDate>
</item>
<item><title>TestComplete: когда не работает метод Drag</title>
<link>http://autotestgroup.com/ru/blog/60.html</link>
<description>&lt;p&gt;Иногда записанный &lt;strong&gt;TestComplete'ом&lt;/strong&gt; код не воспроивзодится так, как хотелось бы. Один из &amp;quot;проблемных&amp;quot; методов - метод &lt;strong&gt;Drag(),&lt;/strong&gt; который позволяет перетащить объект на другое место. В этом случае можно воспользоваться методами &lt;strong&gt;MouseDown()&lt;/strong&gt; и &lt;strong&gt;MouseUp()&lt;/strong&gt; объекта &lt;strong&gt;Sys.Desktop&lt;/strong&gt; для создания собственной функции перетаскивания.&lt;br /&gt; &lt;br /&gt; &lt;font face=&quot;Courier New&quot;&gt;&lt;strong&gt;function &lt;/strong&gt;DragDrop(obj, deltaX, deltaY)&lt;br /&gt; {&lt;br /&gt; &amp;nbsp; &lt;strong&gt;var &lt;/strong&gt;iX = obj.ScreenLeft + obj.Width/2;&lt;br /&gt; &amp;nbsp; &lt;strong&gt;var &lt;/strong&gt;iY = obj.ScreenTop + obj.Height/2;&lt;br /&gt; &amp;nbsp; &lt;font color=&quot;#000080&quot;&gt;&lt;strong&gt;Log&lt;/strong&gt;&lt;/font&gt;.Picture(obj.Picture(), &lt;font color=&quot;#993300&quot;&gt;&amp;quot;Object to be moved&amp;quot;&lt;/font&gt;);&lt;br /&gt; &amp;nbsp; obj = Sys.Desktop.ObjectFromPoint(iX + deltaX, iY + deltaY);&lt;br /&gt; &amp;nbsp; &lt;font color=&quot;#000080&quot;&gt;&lt;strong&gt;Sys&lt;/strong&gt;&lt;/font&gt;.Desktop.MouseDown(VK_LBUTTON, iX, iY);&lt;br /&gt; &amp;nbsp; obj.HoverMouse(obj.Width/2, obj.Height/2);&lt;br /&gt; &amp;nbsp; &lt;font color=&quot;#000080&quot;&gt;&lt;strong&gt;Sys&lt;/strong&gt;&lt;/font&gt;.Desktop.MouseUp(VK_LBUTTON, iX + deltaX, iY + deltaY);&amp;nbsp; &lt;br /&gt; }&lt;br /&gt; &lt;/font&gt;&lt;br /&gt; Эта функция нажимает левую кнопку мыши в центре объекта, который надо перетащить, а затем отпускает кнопку в новом месте. Пример использования функции для перемещения иконок на панели инструментов Быстрый запуск:&lt;br /&gt; &lt;br /&gt; &lt;font face=&quot;Courier New&quot;&gt;&lt;strong&gt;function &lt;/strong&gt;Test3()&lt;br /&gt; {&lt;br /&gt; &amp;nbsp; &lt;strong&gt;var &lt;/strong&gt;w1 = &lt;font color=&quot;#000080&quot;&gt;&lt;strong&gt;Sys&lt;/strong&gt;&lt;/font&gt;.Process(&lt;font color=&quot;#993300&quot;&gt;&amp;quot;Explorer&amp;quot;&lt;/font&gt;).Window(&lt;font color=&quot;#993300&quot;&gt;&amp;quot;Shell_TrayWnd&amp;quot;&lt;/font&gt;).Window(&lt;font color=&quot;#993300&quot;&gt;&amp;quot;ToolbarWindow32&amp;quot;&lt;/font&gt;, &lt;font color=&quot;#993300&quot;&gt;&amp;quot;Quick Launch&amp;quot;&lt;/font&gt;);&lt;br /&gt; &amp;nbsp; DragDrop(w1, -30, -20);&lt;br /&gt; }&lt;/font&gt;&lt;/p&gt;</description>
<guid>60.html</guid>
<pubDate>Mon, 22 Dec 2008 11:11:17 +0200</pubDate>
</item>

</channel>
</rss>
