2016-03-25 1 views
0

Недавно мой коллега проверил сканирование базы кода с использованием HP Fortify 4.3 с использованием установки HP Fortify 4.3 на своем компьютере.HP Fortify 4.3 - номера строк в выводах, не синхронизированных с кодом

Когда я открывал файл .fpr в своей установке HP Fortify 4.3, номера строк в выпусках не всегда совпадают с строками в окне кода, когда я дважды щелкаю по проблеме.

Например, если проблема указана в строке 214 конкретного Java-класса, когда я дважды щелкаю проблему, чтобы просмотреть ее в окне кода, выделенная строка 214 не содержит сообщенной проблемы. Вместо этого он может быть на линии 205.

Это не происходит с каждым исходным файлом.

Что может быть причиной? Я предполагаю, что файл .fpr содержит моментальный снимок кода, который был проверен. Если это правда, то почему номера строк не будут синхронизироваться при открытии файла в моей установке Fortify?

Заранее благодарен!

ответ

2

Да. Файл .fpr содержит моментальный снимок кода, который был проверен. Но это не первый выбор, который использует Fortify при отображении кода. (Исходный код зашифрован, поэтому он не используется по соображениям производительности [я думаю]). Если у вас есть копия исходного кода на вашем компьютере, находящаяся в том же месте, что и код сканирования коллег, Fortify будет использовать это. И может случиться так, что исходный код изменился со времени сканирования.

Когда Fortify идет для отображения исходного кода и не может найти код на внешнем пути сканирования, он будет отображать сообщение:

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

С тремя вариантами:

  • Использование источников, включаемых в РСП
  • Отменить
  • Update Путь

Если вы хотите именно то, что было сканирование затем выбрать первый вариант

Если вы хотите, чтобы он указывал Fortify на расположение исходного кода в вашей системе использует третий вариант.

Если вы хотите использовать внутренний источник затем сделайте следующее

  1. Открыть FPR
  2. Do Tool -> Извлечь Исходный код
  3. Выберите место

Когда ты сделайте это, Fortify автоматически начнет использовать это местоположение, чтобы вытащить исходный код для отображения.