2016-05-19 2 views
0

Я хочу сделать настройку на ячейку в excel без открытия приложения для нее. Я хочу сделать это с Дженкинсом, чтобы я мог автоматизировать (регрессионные) тесты. (Возможно ли это?)Изменение таблиц электронных таблиц Excel с использованием Jenkins

Как вы можете видеть на изображении, которое я прикреплял, я наблюдаю, чтобы изменить значение «N» в excel на значение «Y» или наоборот. Я хочу достичь этого через интерфейс Jenkins. Я слышал что-то вроде параметризованной сборки, но я не могу получить доступ к веб-сайту или тому, что может рассказать мне больше об этой теме.

То, что я хочу достичь, это что-то вроде этого:

  1. Открыть Дженкинс
  2. Выберите задание
  3. В этой работе выберите «Testdata A (или уникальный номер 1)
  4. выбрать Также« Testdata A1 "+" Testdata A2 "(или уникальный номер 1.1 & 1.2)
  5. Сохранить
  6. Запустить работу
  7. Дженкинс берет мой выбор, открывает превосходный фон и делает модификации. В отличии от выбора я выполнил UI Дженкинса.
  8. Другими словами: выбрав «Testdata A» в Jenkins и выполнив задание, «N» в cel C2 необходимо изменить на «Y». Также для других выборов, таких как в cel C3 & C4
  9. Я хочу сделать это более 1 раза. Идея состоит в том, чтобы использовать excel, где все ячейки уже имеют «N» и только меняют «Y», когда я выбираю этот истинный Jenkins.

Приношу свои извинения за плохой английский. Надеюсь, я четко описал, что хочу. Если вам требуется больше объяснений, добавьте комментарий. Заранее спасибо

Excel Testdata

ответ

0

Вы можете найти его проще иметь Дженкинс выполнить vbscript, который обращается и обновляет файл по мере необходимости. Вы можете передать соответствующие параметры в скрипт, который будет делать что-то вдоль линий:

Dim xlApp : Set xlApp = CreateObject("Excel.Application") 
Dim wkBk : Set wkBk = xlApp.Workbooks.Open("pathToWorkBookHere") 
Dim wSheet : Set wSheet = wkBk.WorkSheets("yourSheetNameHere") 

With wSheet.Range("C3") 
    .Value = Wscript.Arguments(0) ' This could be a Y or an N, whatever you passed into the script 
End With 

Вы можете легко масштабировать, что до более чем нескольких книг/рабочих листов/клеток по мере необходимости.

+0

Спасибо Дэйв за ваше предложение. Но означает ли это, что мне постоянно нужно менять VBscript для обновления моего файла? Потому что это то, чего я хочу избежать. –

+0

Нет, вы можете передать параметры в скрипт в строке выполнения в задании задания Jenkins (шаги 3 и 4 в исходном списке). Они ссылаются на скрипт, используя 'Wscript.Arguments (номер параметра, индексированный от 0)'. Вы можете написать код как обычно, как вам нужно, и параметризовать все, что вы хотите передать, как имя книги, путь, имя листа, все, что вам нравится. – Dave

+0

Итак, если я не ошибаюсь, мне нужно постоянно менять свои параметры CODE в линии выполнения Jenkins в onder, чтобы достичь того, что я хочу. Мне нужно сделать это, возможно, 20-30 раз в день. И выбор ячейки может варьироваться от c1 до c25. разве это не требует много времени, если я должен делать это снова и снова. потому что это то, чего я хочу избежать. я хочу выиграть время, делая это так –