Skip to Content

Тестирование SharePoint. Первые шаги

 

Тестируем SharePoint. Первые шаги

 

  Начиная работать с SharePoint'ом, один из первых вопорсов, который задаешь себе: "И что с этим делать?". Действительно, в проекте содержащем две-три сайт коллекции, несколько десятков сайтов, несколько десятков (а то и сотен) вэб партов, предназначенном для тысяч пользователей, сложно не потеряться. При этом, как обычно, времени разбираться со всем этим нет, а тестировать нужно уже сейчас. При этом серфинг по просторам бескрайнего интеренета вряд ли принесет желаемый результат. Конечно же, вы найдете массу мануалов, но все они предназначены, прежде всего, либо для разработчиков, либо для пользователей, но никак не для тестировщиков. Надеюсь, хотя бы немного исправить такую ситуацию поможет этот материал. Более всего он будет полезен тем, кто только начинает знакомиться с SharePoint'ом.

Заранее приношу свои извинения за неполностью/неправильно переведенные термины. Просто у меня не поворачивается язык называть Content Type - типом материала или Web Part - веб частью. Да и в самом деле, мало кто из вас называет Content - содержанием или Test Case - тестовым случаем.

  

SharePoint As Is

 

 Прежде чем переходить к тестированию, пожалуй, стоит выяснить, что же из себя представляет SharePoint. По своей сути – это CMS (Content Management System) содержащая развитую DMS (Document Management System), т.е. систему документооборота. А если быть совсем уж точным, то возможности SharePoint’а, как CMS находятся в зачаточном состоянии, а вот с задачами организации совместной работы и возможностями файлового архива-репозитория он справляется на отлично.

 

 SharePoint — веб-ориентированная платформа для совместной работы и система управления документами, разработанная и продаваемая компанией Microsoft. Это решение может использоваться для создания корпоративного веб-портала, на котором размещаются совместно используемые документы или специализированные приложения, такие как вики или блоги. Данные в SharePoint организованы в виде списков (например, задачи, обсуждения, календари) и библиотек документов. Функциональность SharePoint представляется пользователю посредством веб-частей — элементов управления, показывающих списки и позволяющих редактировать их. Такие веб-части размещаются на страницах, которые, в свою очередь, размещаются на портале и доступны пользователю через браузер. На самом деле, SharePoint является приложением ASP.NET 2.0, использующим IIS для отображения веб-страниц и SQL Server для хранения данных. ru.wikipedia.org

 

 

 Чаще всего решения на основе MOSS (Microsoft Office SharePoint Server) применяются для корпоративных интранет порталов, предназначенных для облегчения взаимодействия сотрудников в пределах предприятия. Но применение SharePoint’а не ограничивается только интранетом, сейчас можно встретить немало сайтов в интернете работающих на базе MOSS (ссылки на множество интернет сайтов на SharePoint можно найти здесь http://www.wssdemo.com/Pages/websites.aspx). Также рекомендую заглянуть на страничку http://classic.utopiasystems.com/spdemo.html  - это небольшой демо сайт, на котором можно пользоваться админкой, загружать документы, настраивать веб парты и т.д.

 Прежде чем приступать непосредственно к тестированию, рекомендую , хотя бы бегло, ознакомиться с MOSS 2007 Evalution Guide . Здесь вы найдете все необходимые ключевые понятия, а также несколько юз кейсов, которые помогут вам в дальнейшей работе.

Также, в случае возникновения вопросов, рекомендую обращаться к сайту http://office.microsoft.com/en-us/sharepointserver/default.aspx

Все написаное ниже будет в полной мере справедливо для Microsoft Office SharePoint Server 2007 (MOSS 2007). Также, все написаное ниже не является истиной в последней инстанции, а лишь представляет собой мою точку зрения на то, что и как стоит тестировать в решениях на базе MOSS 2007.

 

Site Columns

 

Что проверять. Проверяем колонки (Columns) находящиеся в галерее колонок (Site Column Gallery). Если в вашем проекте несколько сайт коллекций (Site Collection), каждая из которых использует свои собственные колонки, то их необходимо проверить для каждой из сайт коллекций (т.е. на рутовом сайте каждой сайт коллекции).

Где найти. Site Actions -> Site Settings -> Modify All Site Settings -> Site Columns (либо по URL /_layouts/mngfield.aspx); 

На что обратить внимание.

  • Название колонки (Column Name
  • Тип данных (Column Type) -  определяет тип данных, которые могут хранится в колонке, например, текст, дата и время, числовой тип и т.д.
  • Группа в которой находится колонка (Group) - в плане функциональности ни на что не влияет, но, размещение всех кастомных колонок в однной группе (либо в нескольких логически разделенных группах) значительно облегчит работу не только вам, но и разработчикам, а также будущим пользователям вашего приложения.
  • Дополнительные настройки колонки (Additional Column Settings) - определяют свойства колонки в зависимости от выбранного типа данных, например, для колонки типа choice здесь могут быть установлены значения которые будет содержать колонка, задано значение выбранное по умолчанию и т.д.

Чего не стоит делать.

  • Не проверяйте стандартные колонки, т.е. те которые создаются не при деплойменте вашего приложения, а находятся на сайте после создания сайт коллекции.
  • Не проверяйте колонки в библиотеках, т.к. они могут отличаться от тех, которые находятся в галерее, поскольку могут быть изменены независимо от колонок в галерее.

 

Site Content Types

 

Что проверять. Проверяем контент тайпы (Content Types) находящиеся в галерее контент тайпов (Site Content Type Gallery). Если в вашем проекте несколько сайт коллекций (Site Collection), каждая из которых использует свои собственные контент тайпы, то их необходимо проверить для каждой из сайт коллекций (т.е. на рутовом сайте каждой сайт коллекции).

Где найти. Site Actions -> Site Setings ->Modify All Site Settings -> Site Content Types (либо по URL /_layouts/mngctype.aspx).

На что обратить внимание.

  • Назавание, описание и группа (Name, description, and group) - функционально данные настройки ни на что не влияют, но также как и в случае с колонками, желательно, чтобы все кастомные контентайпы находились в одной группе. Еще один момент который может немного облегчить работу - это префиксы в именах кастомных контентайпов (например 'CT Article Page' или 'Project_Name Article Page' вместо 'Article Page').
  • Колонки входящие в контент тайп (Columns) - определяют какие метаданные может включать в себя в контент тайп. Колонки, вообщем то, определяют назначение контентайпа. Также, обращайте внимание на то, от каких контентайпов эти колонки унаследованы, желательно, чтобы все колонки либо не имели родителя, либо являлись наследниками стандартных контентайпов, т.к. впоследствии это позволить избежать проблем при обновлении контентайпов.
  • Сортировка колонок контентайпа (Column Order) - функционально ни на что не влияет, но ведь приятно, когда все выглядит красиво Smile.
  • Автоматические действия выполняемые при работе с контентайпом (Workflows) - workflows могут не использоваться в вашем проекте, поэтому проверяем их только по мере необходимости.

 

 Чего не стоит делать.  

  • Не проверяйте стандартные контентайпы, т.е. те которые создаются не при деплойменте вашего приложения, а находятся на сайте после создания сайт коллекции.
  • Не проверяйте контентайпы в библиотеках, т.к. они могут отличаться от тех, которые находятся в галерее, поскольку могут быть изменены независимо от колонок в галерее. 

 

 

Libraries and Lists 

 

Что проверять. Проверяем настройки библиотек и листов, которые будут использоваться в вашем приложении для хранения документов, информации отображаемой в вэб партах (Web Parts), изображений и т.д.

Где найти.  Site Actions -> View All Site Content -> <Library_Name/List_Name> -> Settings -> Document Library Settings/List Settings

На что обратить внимание.

  • Название, описание и настройки навигации (Title, description and navigation) - название и описание функционально ни на что не влияют, настройки навигации определяют будут ли видны библиотека или лист в навигации сайта  (Current Navigation/Quick Launch).
  • Настройки версионирования (Versioning settings). Эти настройки определяют, каким образом будет происходить работа с документами: будет ли использоваться модерация добавленых материалов (Content Approval), будет ли доступно создание редакций документа (Document Version History), и если создание редакций доступно, то будут ли доступны черновые редакции (Minor Versions/Draft Versions) или только основные редакции (Major Versions/Published Versions). В этом же разделе определяется, кто будет иметь право на просмотр черновых редакций (Draft Item Security), а также включается необходимость делать Check Out при редактировании документа (Check Out позволяет предотвратить одновременное редактирование документов).
  • Дополнительные настройки (Advanced Settings) - определяют будут ли документы данной библиотеки включены в результаты поиска (Search), будет ли доступно создание новых папок в библиотеке (Folders), будут ли открываться документы в браузере или в клиентском приложении (Browser-enabled Documents), позволяют добавить дополнительный URL в меню Send To (Custom Send To Destination), дают возможность определить шаблон документов создаваемых при нажатии кнопки New (Document Template), также, здесь находится опция включения и отключения менеджмента контент тайпов (Content Types).
  • Настройки работы с таргетингом (Audience targeting settings) - позволяют включить или отключить использование таргетинга для документов находящихся в библиотеке.
  • Права доступа к библиотеке (Permissions for this document library). Проверяйте эти настройки, только если права доступа к конкретному листу или библиотеке должны быть уникальными. В общем случае эти права наследуются от прав доступа к сайту на котором находится библиотека.
  • Политики менеджмента контент тайпов (Information management policy settings). Проверяйте только если они используются в вашем проекте.
  • Контент тайпы которые могут использоваться в библиотеке (Content Types). Убедитесь, что все необходимые контентайпы добавлены в библиотеку. Проверьте какой из контентайпов установлен для использования по умолчанию и порядок в котором они выводятся при нажатии кнопки New. По умолчанию секция Content Types может быть недоступна, в таком случае включите на время проверки менеджмент контент тайпов при помощи опции 'Allow management of content types?' в разделе Advanced Settings
  • Доступные способы отображения содержимого листа или библиотеки (Views). Проверяйте только если ваше приложение создает нестандартные способы отображения.

 

 

Уделите максимум внимания настройкам версионирования, дополнительным настройкам и настройкам таргетинга, т.к. они напрямую связаны с организацией документооборота, работой поиска и с отображением содержимого библиотеки в вэб партах.

Обратите внимание, что среди библиотек, особняком стоит библиотека Pages. Все страницы сайта хранятся только в этой библиотеке. Несмотря на то, что контент тайпы страниц могут быть добавлены в любую из библиотек, при создании самой страницы она будет помещена в библиотеку Pages. Не стоит хранить в этой библиотеке какие-либо документы.

Одна из известных проблем, существующих в текущей версии SharePoint'a - это невозможность иметь несколько Pages Library на одном сайте (т.е. создать то их можно, но вот поместить в них страницы не удастся Sad )

Чего не стоит делать.  

  • Не проверяйте листы и библиотеки, которые не будут в дальнейшем использоваться вашим приложением.

 

Page Layouts and Design

 

Что проверять. Проверяем, что шаблоны страниц (Page Layouts) содержат все необходимые контролы и соответствуют дизайну.

Где найти.  Не забывайте, что каждый из шаблонов страниц соответствует только одному контент тайпу (например, Artcile Page with image on left может использоваться только с контент тайпом Article Page, т.к. только в этом случае страница будет отображаться корректно). Поэтому для тестирования шаблонов страниц вам необходимо добавить все контент тайпы страниц в библиотеку Pages. Если необходимые шаблоны страниц недоступны по умолчанию на сайте на котором вы собираетесь тестировать, то их можно добавить здесь Site Actions -> Site Setings -> Modify All Site Settings -> Page layouts and site templates здесь (или по URL _Layouts/AreaTemplateSettings.aspx). 

На что обратить внимание.

  • Проверяйте страницы в обычном режиме и в режиме редактирования.
  • Проверьте, что все необходимые контролы доступны и находятся на своих местах .
  • Проверьте, что все необходимые веб парт зоны доступны и находятся на своих местах.
  • Вставьте на страницу несколько веб партов большой ширины (для этого можно установить фиксированую ширину в свойствах веб партов) и проверьте как выглядит страница в этом случае.
  • Обычно проекты на SharePoint - это IE only проекты, но даже в этом случае вам не избежать проверки в разных браузерах, точнее в разных версиях одного и того же браузера :-)  (как использовать несколько версий IE на одном ПК читайте здесь http://iqa.com.ua/soft/tools/multiple_ie и здесь http://iqa.com.ua/soft/tools/ie8_standalone).

Чего не стоит делать.  

  • Не проверяйте стандартные шаблоны страниц, если они не используются в вашем проекте.
  • Не придирайтесь к дизайну системных страниц. Их дизайн может отличаться от шаблонов страниц, но все-таки они предназначены только для администраторов/контент менеджеров  и, пожалуй, при отсутствии особых требований мелкие несовпадения с дизайном можно проигнорировать. На мой взгляд это именно тот случай, когда сэкономленное время будет стоить больше, чем непофикшеный баг.

 

Site Templates

 

Что проверять. Проверяем создание сайтов на основе шаблонов (Site Templates), проверяем что шаблоны настроены правильно.

Где найти.   Если необходимые шаблоны сайтов недоступны по умолчанию на сайте где вы собираетесь тестировать, то их можно добавить здесь Site Actions -> Site Setings -> Modify All Site Settings -> Page layouts and site templates здесь (или по URL _Layouts/AreaTemplateSettings.aspx). Не забывайте добавить на сайт шаблоны страниц, которые используются вашими шаблонами сайтов. 

На что обратить внимание.

  • Проверьте, что после создания сайта на нем присутствуют все необходимые библиотеки и листы с соответствующими настройками.
  • Проверьте, что в библиотеках находятся все необходимые страницы и документы
  • Если ваше приложение использует дизайн в виде темы, проверьте что соответствующая тема выбрана для сайта (Site Actions -> Site Setings -> Modify All Site Settings -> Page layouts and site theme  или по URL _layouts/themeweb.aspx)

 Чего не стоит делать.  

  • Не проверяйте стандартные шаблоны сайтов, если они не используются в вашем проекте.

 

Navigation

 

Что проверять. Проверяем правильность настроек навигации на сайтах создаваемых при деплойменте приложения.

Где найти. Site Actions -> Site Setings -> Modify All Site Settings -> Navigation (или по URL  _layouts/AreaNavigationSettings.aspx)

 

 

Web Parts

 

Что проверять. Проверяем правильность настройки веб партов (Web Parts), которые находятся на страницах после деплоймента приложения, а также функционал кастомных веб партов которые могут быть добавлены и настроены пользователями.

 Поскольку веб партов может быть огромное множество и они могут очень сильно отличаться по функционалу, то общие рекомендации по их тестированию дать весьма сложно.  Достаточно исчерпывающий чек лист для тестирования веб партов можно найти здесь http://msdn.microsoft.com/en-us/library/ms916830.aspx

Уделите тестированию веб партов как можно больше времени, т.к. именно благодаря им реализуется большая часть функционала. 

На что обратить внимание.

  • По возможности, тестируйте веб парты с большим количеством тестовых данных.
  • Если в вашем проекте используется таргетинг, то обязательно проеряйте веб парты с документами предназначенными для разных групп.
  • Если в вашем проекте присутствуют веб парты, отображение документов в которых зависит от полей с типом Date Time, то обязательно проверьте правильно ли обновляются данные в веб партах при достижении заданного времени. Когда осуществляете такую проверку не производите никаких действий на сайте - просто обновляйте страницу.
  • Если в вашем проекте есть веб парты, которые должны собирать данные из нескольких сай коллекций, то проверяйте их размещая тестовые данные на всех доступных сайт коллекциях приложения.

 

 

Чего не стоит делать.  

  • Не проверяйте стандартные веб парты, если только они не помещаются на страницы сайтов при деплойменте вашго приложения.

  

 Permissions

 

Что проверять. Проверяем функционал приложения работая с учетными записями пользователей имеющих разные права доступа.

Где найти.   Все необходимые настройки прав доступа находятся здесь Site Actions -> Site Setings -> Modify All Site Settings -> People and Groups (или по URL _layouts/people.aspx). 

На что обратить внимание.

  • Проверяйте весь стандартный функцонал, который по умолчанию не может использоваться пользователями с ограничеными правами, но в вашем приложении доступен для них (например, добавление страниц пользователями из группы Visitors).
  • Проверяйте правильно ли отображаются стили и изображения для пользователей с ограничеными правами (например, если изображение, которое является частью дизайна не имеет основной редакции, то оно не будет показано пользователю из группы Visitors).
  • Проверяйте весь нестандартный функционал используя учетные записи с различными правами доступа.

 

 

 Search

 

Что проверять. Проверяем поиск по профилям пользователей и по контенту.

Где найти. При тестировании поиска, вам понадобится доступ к SharePoint Central Administration, а точнее к Shared Services. Здесь вам понадобятся профили пользователей (User Profiles) и управления краулингом (Crawling).

На что обратить внимание.

  • Тестируя поиск не забывайте делать краулинг после любых изменений контента либо профилей пользователей.Практически все изменения на сайте должны становиться доступными после инкрементного краулинга (Incremental Crawl)
  •  Обратите внимание на то, что в результаты поиска могут быть включены только документы имеющие основную редакцию
  • Проверяйте поиск используя ключевые слова и словосочетания содержащие знаки препинания и специальные символы (?,$,%,& и т.д.)
  • Проверяйте поиск устанавливая различные предпочтительные локализации веб страниц в браузере (Знаю, что звучит бредово, но попробуйте, возможно, в один прекрасный момент ваше мнение изменится Smile )

 

Пожалуй, поиск - одна из самых загадочных частей MOSS2007. Я, например, пока не знаю ни одного человека, который бы до конца понимал как он работает Smile. Надеюсь, что такие люди есть хотя бы в Microsoft...

 

Integration

 

Что проверять. Проверяем интеграцию с приложениями MS Office.

 

На что обратить внимание.

  • Проверьте, что все поля кастомных контент тайпов могут быть заполнены из приложений MS Office.
  • Если ваши пользователи будут использовать Office Communicator, то проверьте, что статусы отображаются правильно и в правильных местах. 

 

Solution Deployment

 

Что проверять. Проверяем деплоймент приложения на чистый сервер, а также деплоймент патчей (справедливо только если ваше приложение поставляется в виде деплоймент пакета, а не деплоится вручную или не разможается бекапами Smile ). Такое тестирование особенно актуально, если ваша компания в дальнейшем не будет предоставлять саппорт.

Для тестирования деплоймента вам понадобится доступ на сервер с установленными Windows 2003 и MOSS2007. 

На что обратить внимание.

  • Переодически производите деплоймент на чистый сервер, чтобы убедится, что все изменения произведенные в приложении были внесены в солюшен и попали в деплоймент пакет.
  • Устанавливайте патчи на сервер на котором уже присутствуют тестовые данные, после чего проверяйте "сохранность" контента. 

 

Post Scriptum

 

На этот раз, пожалуй, все... Конечно же, этот импровизированный How To не исчерпывающий и вы в процессе работы  обязательно обнаружите еще множество моментов, которые здесь не описаны. За сим разрешите откланяться и пожелать всем удачи в освоении SharePoint'a Wink.

 

+++++-----

Отправить комментарий

  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступны HTML теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и параграфы переносятся автоматически.
  • Pairs of<blockquote> tags will be styled as a block that indicates a quotation.
  • Textual smileys will be replaced with graphical ones.

Подробнее о форматировании