суббота, 14 декабря 2013 г.

О сборке C++ проектов в Visual Studio 2013 при наличии зависимостей от библиотек собранных в предыдущих версиях

Пару дней назад, ко мне обратился Brandousov с проблемой. При сборке проекта заточенного по Visual Studio 2010 в 2013 студии падает толпа ошибок вида:

Причем этих ошибок "error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1800'" падают сотни.
На С++ я не пишу, но т.к. ошибка похожа на несовместимость версий, то я решил поискать, что делать. Достаточно быстро нашел вот здесь как в VS 2013 собирать под версию компилятора 2010 студии. И отправил это все Brandousov. Ему решение помогло и он любезно предоставил описание действий для решения этой проблемы на русском. Вдруг кому пригодится:
1. Скачал и поставил VS 2010 Express, потом следуя рекомендациям по ручной сборке Chromium накатил на него сервис пак 1, поставил вин СДК 7.1 (ставится легко и быстро, ссылка: http://www.chromium.org/developers/how-tos/build-instructions-windows, патчить ничего не надо, главное сначала поставить VS 2013, потом остальное).
2. Открыл проект для VS2010 в VS2013, на предложение автоматически обновить компилятор и либы ответил отказом.
Не забудьте посмотреть в свойствах проекта, что у вас стоит правильный Platform Target:

3. Rebuild.

 

пятница, 6 декабря 2013 г.

О KPI-ях

История от начала до конца выдумана, все совпадения с реальностью случайны.

В одной компании столкнулись с проблемой большого количества ошибок, пропускаемых в operation. На 10 ошибок, обнаруженных в процессе разработки, приходилось 10 ошибок, обнаруженных в процессе эксплуатации. Для борьбы с этой проблемой было принято решение об организации специального подразделения для проведения приемочного тестирования. Одним из KPI в рамках проекта создания такого подразделения, было требование снизить количество ошибок, всплывающих в процессе эксплуатации до 10% от суммарного количества ошибок. Т.е. 18 ошибок будет обнаруживаться в тестировании, и всего 2 будут приходить из эксплуатации.

четверг, 14 ноября 2013 г.

Почистить transaction log в случае его переполнения

Ситуация не стандартная, но если recovery mode стоит в full, то почистить переполнившийся transaction log не получится, потому что в него не получится записать информацию о чистке transaction log-а. Т.к. все время забываю, пусть скрипт для этого здесь полежит.
USE ИмяБазыДанных

ALTER DATABASE ИмяБазыДанных SET RECOVERY SIMPLE

DBCC SHRINKFILE (ЛогическоеИмяФайлаСЛогом, РазмерВмегабайтах);

ALTER DATABASE ИмяБазыДанных SET RECOVERY FULL

понедельник, 14 октября 2013 г.

AutomationProperties при тестировании пользовательского интерфейса

При использовании Microsoft Test Manager (MTM ) для тестирования пользовательского интерфейса есть два варианта ручное и автоматизированное тестирование. Автоматизированное, от ручного, отличается тем, что выполнив ручной тест, мы можем записать последовательность действий и запускать эту последовательность действий для выполнения регрессионного теста, или для проверки воспроизводится ошибка или нет. При записи, особенно когда идет выбор элемента в списке у MTM возникает проблема с идентификацией. Например, когда мы записывали тест, у нас сотрудник Иванов был третьим в списке, а сейчас, он второй. О том, как облегчить жизнь тестировщикам и улучшить определение элементов я сегодня и расскажу.

Выгрузка файлов из ASP .Net приложения

Всякими Web-сервисами пользуюсь постоянно, но тут возникла задача, написать сервис, который сможет отдавать файлы в любые приложения. Нашел в интернете несколько решений, что то не заработало, что то заработало но с некоторыми проблемами, которые пришлось решать. Все что находил было на английском, поэтому пусть здесь полежит, вдруг еще кому пригодится.
Еще раз, стоит задача написать web-приложение, которое получив http запрос с параметром, по параметру определит, какой файл мне нужен и отдаст его именно как файл.